Teil von SELFHTML Forum Teil von SELFHTML Forumsarchiv Teil von 2003 Teil von Dezember

SELFHTML Forumsarchiv
in einem Layer soll bei MouseOver ein neuer Text erscheinen

Informationsseite
  1. Seite (JAVASCRIPT) in einem Layer soll bei MouseOver ein neuer Text erscheinen von Bernd, 30. 12. 2003, 20:54
nach unten

in einem Layer soll bei MouseOver ein neuer Text erscheinen

Die folgende Nachricht zum Thema stammt von: Bernd, 30. 12. 2003, 20:54

Hallo,
auf der Seite: http://www.carisma-photographers.com/test/photographers.htm sind meherer Namen. Geht es das Script so umzuschreiben das bei einem mouseover anstatt dem Personennamen (z.B. "Dieter Huber") der Ort (z.B. "Salzburg") erscheint?
Die Namen sind alle in einem <div>
Ich habe schon ein bißchen probiert, aber es ist mir nicht gelungen.

Guten Rutsch und viel Glück im neuen Jahr,
Bernd

nach obennach unten

in einem Layer soll bei MouseOver ein neuer Text erscheinen

Die folgende Nachricht zum Thema stammt von: ptr, 30. 12. 2003, 21:39

Hallo Bernd,
habs nicht ausprobiert, aber so könnts gehen:




var namenspeicher;

var person_art=[ ['Amsterdam',7,8,9,10,11],['New York',12,7,9,6,0],['Oslo',7,9,8],['Munich',6,7,9,1],['Bad Neustadt',11,7,8,2,9],['Stadt',5,6,9,7,10],['Stadt',8,9,3],['Stadt',7,2,4,9,10],['Stadt',5,9,1,10,7],['Stadt',10,7,2,3,1],['Stadt',7,2,1]];



function clearAll() {

if(arguments.length>0){arguments[0].childNodes[0].childNodes[0].nodeValue=namenspeicher;}

  for (x=0;x<=12;x++) { document.getElementById("art_"+x).style.color = "#666666";        }
  for (x=0;x<=10;x++) { document.getElementById("per_"+x).style.color = "#666666";        }
}



function changePerson(id) {
  for (x=0;x<=12;x++) { document.getElementById("art_"+x).style.color = "#666666";        }
  for (x=1;x<= person_art[id].length;x++) { document.getElementById("art_"+person_art[id][x]).style.color = "#007DC9"; }

        document.getElementById("per_"+[id]).childNodes[0].nodeValue=person_art[id][0];

        document.getElementById("per_"+[id]).style.color = "#007DC9";
}





                  <a href="photographers/huber.htm" onMouseOver="changePerson(0)" onMouseOut="clearAll(this)">
            <div class="photographers" id="per_0">Dieter Huber</div></a>


gruß
ptr

nach obennach unten

in einem Layer soll.... Korrektur !!

Die folgende Nachricht zum Thema stammt von: ptr, 30. 12. 2003, 21:44

uuups,
namenspeicher muß natürlich belegt werden:

function changePerson(id) {
  for (x=0;x<=12;x++) { document.getElementById("art_"+x).style.color = "#666666";        }
  for (x=1;x<= person_art[id].length;x++) { document.getElementById("art_"+person_art[id][x]).style.color = "#007DC9"; }

namenspeicher=document.getElementById("per_"+[id]).childNodes[0].nodeValue;

document.getElementById("per_"+[id]).childNodes[0].nodeValue=person_art[id][0];

        document.getElementById("per_"+[id]).style.color = "#007DC9";
}


gruß
ptr

nach obennach unten

in einem Layer soll....

Die folgende Nachricht zum Thema stammt von: ptr, 30. 12. 2003, 21:52

... ob allerdings die Modem-Benutzer glücklich sind, wenn gleich beim ersten Aufruf der Seite 100.000 MB Bilder vorgeladen werden, ohne daß man was sieht...????
gruß
ptr

nach obennach unten

hat leider nicht ganz funktioniert

Die folgende Nachricht zum Thema stammt von: Bernd, 30. 12. 2003, 22:36

Vielen Dank für Deine Hilfe. Ich habe es so versucht, aber leider hat es nicht funktioniert.
Du findest die neue Seite unter http://www.carisma-photographers.com/test/photographers_test4.htm

Das mit dem Preloaden habe ich rausgemacht. War echt ein bißchen heavy. Da muss ich mir was eleganteres einfallen lassen.



»» ... ob allerdings die Modem-Benutzer glücklich sind, wenn gleich beim ersten Aufruf der Seite 100.000 MB Bilder vorgeladen werden, ohne daß man was sieht...????
»» gruß
»» ptr

nach obennach unten

hat leider nicht ganz funktioniert

Die folgende Nachricht zum Thema stammt von: ptr, 30. 12. 2003, 23:38

nach der changePerson()-Funktion fehlt das abschließende "}".
die zweite for-Schleife in dieser Funktion muß mit x=1 beginnen:
  for (x=1;x< person_art[id].length;x++) .....

gruß
ptr

nach obennach unten

hat leider nicht ganz funktioniert

Die folgende Nachricht zum Thema stammt von: ptr, 31. 12. 2003, 00:20

Hi Bernd,

habs mal ausprobiert, das funktioniert dann.

Aber bei den Kategorien darfst du natürlich nicht "this" in der clearAll()-Funktion übergeben, sonst wird da auch der letzte Name reingelegt bei mouseout.

Als nächstes Problem taucht dann folgendes auf :

z.B.:
"Thorsten Klapsch" ist viel kürzer als "Berlin".
Fahre ich mit der Maus ganz rechts über Klapsch, wechselt's zu Berlin.
Das ist kürzer, ich bin nicht mehr darüber mit der Maus und das mouseout-Ereignis tritt ein.
Dadurch erscheint wieder "Thorsten Klapsch", das ist länger, die Maus ist wieder drüber, "Berlin" erscheint, ich bin nicht mehr drüber, "Thorsten Klapsch" erscheint, das ist länger, .....
und immer so weiter. Es flackert.

Kannste verhindern, wennde deinen Personen-DIVs z.B. style="width:130px" zuweist.


frohes neues!
ptr

nach obennach unten

hat leider nicht ganz funktioniert

Die folgende Nachricht zum Thema stammt von: ptr, 31. 12. 2003, 00:41

Hi Bernd,

habs mal auf NS 7.0 ausprobiert, da funktionierts nicht.
Liegt daran, daß der NS beim clearAll(this) im <a> mit "this" nicht eine Referenz auf das Objekt zurückgibt, sondern die Link-Adresse.

Mach jetzt aber Feierabend, ich schau morgen nochmal hier vorbei.

ptr

nach obennach unten

funktioniert

Die folgende Nachricht zum Thema stammt von: ptr, 31. 12. 2003, 10:36

Hi Bernd,
so gehts:

http://www.nesplan.de/gast/test/carisma.html

ptr

nach obennach unten

Danke!!!

Die folgende Nachricht zum Thema stammt von: Bernd, 31. 12. 2003, 11:12

Super!!! Vielen Dank. Hoffentlich kannst Du das Script auch mal irgendwann für Dich selbst benutzen.

Guten Rutsch und viel Glück im neuen Jahr.


»» Hi Bernd,
»» so gehts:
»»
»» http://www.nesplan.de/gast/test/carisma.html
»»
»» ptr

nach obennach unten

in einem Layer soll... 2. Korrektur !!

Die folgende Nachricht zum Thema stammt von: ptr, 30. 12. 2003, 22:19

uuups,
und die zweite for-Schleife muß dann zwar bei 1 anfangen, darf aber trotzdem nur bis x<person_art[id].length laufen (nicht <=):

function changePerson(id) {
  for (x=0;x<=12;x++) { document.getElementById("art_"+x).style.color = "#666666";        }
  for (x=1;x< person_art[id].length;x++) { document.getElementById("art_"+person_art[id][x]).style.color = "#007DC9"; }

namenspeicher=document.getElementById("per_"+[id]).childNodes[0].nodeValue;

document.getElementById("per_"+[id]).childNodes[0].nodeValue=person_art[id][0];

        document.getElementById("per_"+[id]).style.color = "#007DC9";
}

war denkfehler.

sorry
ptr

nach obennach unten

Ich probiere es mal aus. Danke!

Die folgende Nachricht zum Thema stammt von: Bernd, 30. 12. 2003, 22:42

Ok, ich werde es mal ausprobieren.
Danke.

nach obennach unten

in einem Layer soll bei MouseOver ein neuer Text erscheinen

Die folgende Nachricht zum Thema stammt von: chogle, 31. 12. 2003, 09:16

Hallo

mache doch einfach zwei div's, einen für den Namen, den anderen für die Strasse

und bei MouseOver setzt du den einen auf hidden, den anderen auf visibility

nach oben
Teil von SELFHTML Forum Teil von SELFHTML Forumsarchiv Teil von 2003 Teil von Dezember

© 1998-2006 Seite Impressum, Software: Classic Forum