Listview mit Javascript

Fragen zu den Grundfunktionen der webEdition Oberfläche wie Backup, Import, ...
Fragen zu we:Tags bitte im Forum "Templates erstellen"
grashopper

Listview mit Javascript

Beitragvon grashopper » Di 1. Jul 2003, 15:20

Hallo zusammen,
folgendes Problem (was auch sonst;-)

Ich habe 2 Frames (Kundenwunsch, ist nicht zu ändern), oben ein Menu aus 5 Presseinfos, unten Inhalt.
Im Menu sind die Headlines der Infos jeweils mit einer Buttongrafik davor.
die sich bei MouseOver ändert und bei Click die andern Buttons zurücksetzt, den eigenen Button auf den On-Zustand bringt und die entsprechende News im unteren Frame öffnet.

Das Menu soll mit den entsprechenden we:tags immer die 5 aktuellsten News darstellen, das ist auch kein Problem. Aber wie binde ich das Javascript für die Buttons ein?

Das Script sieht so aus:
var clickst=new Array(8); var bildon=new Array(8); var bildoff=new Array(8); var bildcl=new Array(8); var nr=1;
for (i=1; i<8; i++) {
clickst=0;
bildon=new Image(); bildon.src="../pix/submenu/but.gif";
bildoff=new Image(); bildoff.src="../pix/submenu/buto.gif"
bildcl=new Image(); bildcl.src="../pix/submenu/but.gif"
}
function bildan(bildnr) {nr=bildnr;
if (clickst[bildnr]==0) { document['bild' + nr].src=bildon[nr].src;}
}
function bildaus(bildnr) {nr=bildnr;
if (clickst[bildnr]==0) { document['bild' + nr].src=bildoff[nr].src}
}
function bildclick(bildnr) {nr=bildnr;
for (i=1; i<6; i++) {clickst=0; document['bild' + i].src=bildoff.src}
clickst[nr]=1; document['bild' + nr].src=bildcl[nr].src
}


und in den Link für die erste Info im Menu kommt dann:
ONCLICK="bildclick(1);" ONMOUSEOVER="bildan(1);" ONMOUSEOUT="bildaus(1);"

im nächsten Link dann Nummer 2 usw. bis zur 5.

Das kann natürlich nicht funktionieren, wenn ich mit we:repeat arbeite.
Es muss aber schon "automatisch" funktionieren, damit der Redakteur das Menu nicht bearbeiten muss.

Gibts da eine Lösung? Wäre super!

Dirk Einecke
Senior Member
Beiträge: 3735
Registriert: Do 1. Jan 1970, 02:00
Wohnort: Karlsruhe
Kontaktdaten:

Beitragvon Dirk Einecke » Di 1. Jul 2003, 15:47

Hi.

Das kann man so machen:

Code: Alles auswählen

<?php $i = 1; ?>
<we:listview>
  <we:repeat>
    <a href="<we:field name="we_path"/>" target="Framename" ONCLICK="bildclick(<?php echo $i; ?>);" ONMOUSEOVER="bildan(<?php echo $i; ?>);" ONMOUSEOUT="bildaus(<?php echo $i; ?>);"><we:field name="Feldname" type="text"/></a>
<?php $i++; ?>
  </we:repeat>
</we:listview>

grashopper

Beitragvon grashopper » Di 1. Jul 2003, 16:17

1000Dank, genau das ist es!!!!!!!!!!!!

Einfach nur genial, genau 27 Minuten nach der Frage gibts die Lösung...
GanzGrosseKlasse!!! :D :D :D :D :D

grashopper

Hüstel

Beitragvon grashopper » Di 1. Jul 2003, 16:50

ich mags ja gar nicht schreiben, :oops: aber ein Prob hab ich noch:
Sorry, aber ich habe vergessen zu erwähnen, dass Button neben dem ersten Link bei Aufruf des Framsets bereits markiert sein soll:

Hier das HTML
dabei ist "but.gif" = gewählt und "buto.gif = nichtgewählt,
jetzt nur für 2 Links, 5 sollten es ja werden.

<table border="0" cellpadding="0" cellspacing="0">
<tr>
<td align="left">[img]../pix/submenu/but.gif[/img]

</td>
<td valign="top" nowrap><a href="DIE URL" target="unten" ONCLICK="bildclick(1);" ONMOUSEOVER="bildan(1);" ONMOUSEOUT="bildaus(1);">DER ERSTE LINK</a></td>
</tr>
<tr>
<td align="left">[img]../pix/submenu/buto.gif[/img]</td>
<td valign="top" nowrap><a href="DIE URL" target="unten" ONCLICK="bildclick(2);" ONMOUSEOVER="bildan(2);" ONMOUSEOUT="bildaus(2);">DER ZWEITE LINK</a></td>
</tr>
</table>

Würde das so ganz eventuell auch irgendwie mit we:listview und dem php-Script funktionieren können?
Tut mir leid, dass ich gleich das nächste Problem nachschiesse, aber von php habe ich leider 0 Ahnung...

Dirk Einecke
Senior Member
Beiträge: 3735
Registriert: Do 1. Jan 1970, 02:00
Wohnort: Karlsruhe
Kontaktdaten:

Beitragvon Dirk Einecke » Di 1. Jul 2003, 17:00

Hi.

Um den ersten Eintrag als geklickt anzuzeigen einfach nach der gesamten Listview:

Code: Alles auswählen

<script language="JavaScript" type="text/JavaScript">bildclick(1);</script>

grashopper

Beitragvon grashopper » Di 1. Jul 2003, 17:16

Okay, werde ich versuchen, besten Dank!
Aber jetzt ist - auch wenn die Forums-Zeit etwas anderes behauptet - erst einmal Feierabend!

grashopper

Beitragvon grashopper » Mi 2. Jul 2003, 11:36

Funktioniert alles super, noch einmal vielen Dank.


Zurück zu „Basisversion“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 3 Gäste