Mousein-Mouesout
Andre Speit
- java
Hallo,
ich möchte, das sich bei Berührung mit der Maus Grafiken ändern; allerdings erst wenn der Benutzer vorher einen Button gedrückt hat.
Bin noch Anfänger und hab schon eine ganze Zeit mit dem Mousein/Mouseout Befehl gebastelt aber alles was ich geschafft hab war ein "normaler" Berührungsbefehl- ohne die Aktivierung vorher.
Danke im Voraus
Andre Speit
ich möchte, das sich bei Berührung mit der Maus Grafiken ändern;
Andre,
Du möchtest sicher, dass beim Client etwas passiert, ohne dass der Server damit belästigt (belastet?) wird. Du meinst vermutlich nicht Java, sondern JavaScript.
allerdings erst wenn der Benutzer vorher einen Button gedrückt hat.
Du setzt eine globale Variable initial auf false, beim Drücken des Buttons auf true. Bei Mouseover fragst du dieses Flag ab und änderst die Grafiken oder eben nicht.
Live long and prosper,
Gunnar
Hi,
Du möchtest sicher, dass beim Client etwas passiert, ohne dass der Server damit belästigt (belastet?) wird. Du meinst vermutlich nicht Java, sondern JavaScript.
wie kommst Du auf diese Idee? im Titel steht doch fett mouseIn und mouseOut. Das gibt's in Javascript nicht, wohl aber in Java.
freundliche Grüße
Ingo
Du meinst vermutlich nicht Java, sondern JavaScript.
wie kommst Du auf diese Idee?
Och, Ingo, nur so ’ne Vermutung. Offensichtlich lag ich damit richtig.
Live long and prosper,
Gunnar
Hi,
Och, Ingo, nur so ’ne Vermutung. Offensichtlich lag ich damit richtig.
Tatsächlich. Ich hatte erwartet, daß es sich bei der Themenwahl Java und der Angabe von Java-Funktionen auch um ein Java-Problem handelt. Ich frage mich nur, wie Andre auf mouseIn gekommen ist, wenn er offensichtlich Java gar nicht kennt.
freundliche Grüße
Ingo
Hallo,
im Titel steht doch fett mouseIn und mouseOut. Das gibt's in Javascript nicht, wohl aber in Java.
Hilfst Du mir auf die Sprünge, wo die in Standard-Java-Klassen definiert sein sollen? Bisher kenne ich nur mouseEntered(java.awt.event.MouseEvent) und mouseExited(java.awt.event.MouseEvent).
viele Grüße
Axel
Hi,
Hilfst Du mir auf die Sprünge, wo die in Standard-Java-Klassen definiert sein sollen? Bisher kenne ich nur mouseEntered(java.awt.event.MouseEvent) und mouseExited(java.awt.event.MouseEvent).
Du hast Recht und ich wohl was durcheinander gebacht, sorry.
freundliche Grüße
Ingo
Andre,
Du möchtest sicher, dass beim Client etwas passiert, ohne dass der Server damit belästigt (belastet?) wird. Du meinst vermutlich nicht Java, sondern JavaScript.
Ja, so stell ich mir das vor
allerdings erst wenn der Benutzer vorher einen Button gedrückt hat.
Du setzt eine globale Variable initial auf false, beim Drücken des Buttons auf true. Bei Mouseover fragst du dieses Flag ab und änderst die Grafiken oder eben nicht.
Ich hab sowas mit ner Zahlvariablen und dann if probiert aber irgendwie hat das nicht wirklich geklappt.
Wie muss das ganze denn aussehen?
Im moment ist das bei mir wei folgt:
_____________________________________________________________________
<html>
<script language="JavaScript">
normal1 = new Image();
normal1.src="bild1.gif";
highlight1 = new Image();
highlight1.src="bild1_hi.gif";
function bildwechsel(bildnr,bildobjekt) {document.images[bildnr].src=bildobjekt.src}
</script>
<body>
<a href="#" onmouseover="bildwechsel(0,highlight1)" onmouseout="bildwechsel(0,normal1)"><img src="bild1.gif"></a>
</body>
</html>
_____________________________________________________________________
Ich hab sowas mit ner Zahlvariablen und dann if probiert aber irgendwie hat das nicht wirklich geklappt.
Andre,
In deinem geposteten Code ist von deinem Versuch nichts zu sehen, da kann dir niemand sagen, warum das nicht geklappt hat.
<html>
<script language="JavaScript">
Auch wenn die <head>
- und </head>
-Tags in HTML optional sind, solltest du sie nicht weglassen.
Das zwingend notwendige type-Attribut des script-Elements fehlt, das language-Attribut kommt in die Mülltonne: <script type="text/javascript">
Live long and prosper,
Gunnar
Ok, ich werd drauf achte.
Hab das ganze aber grad mit boolean Werten hingekriegt! Werd noch ein bissle rumprobieren aber ich denke ich habs geschafft.
Gruß und danke an alle
Andre Speit
______________________________________________________________________
<html>
<script type="text/javascript">
normal1 = new Image();
normal1.src="bild1.gif";
highlight1 = new Image();
highlight1.src="bild1_hi.gif";
test3=5
wert="false"
function bildwechsel(bildnr,bildobjekt)
{
if
(wert == "true"){
document.images[bildnr].src=bildobjekt.src
}
else
{
}
}
</script>
<script type="text/javascript">
var zahl = 0;
function test() {
wert="true"
}
</script>
<body>
<a href="#" onmouseover="bildwechsel(0,highlight1)" onmouseout="bildwechsel(0,normal1)"><img src="bild1.gif"></a>
<a href="javascript:test()"> TEST </a>
</body>
</html>
Hab das ganze aber grad mit boolean Werten hingekriegt!
Nein, hast du eigentlich nicht.
wert="false"
if(wert == "true")
wert="true"
"true"
und "false"
sind Strings. Boolean wäre true
und false
.
<html>
Andre,
Ich vermisse immernoch das Start- und End-Tag des heads.
wert="false"
Ein Semikolon ist in JavaScript am Zeilenende zwar nicht zwingend, ich würd es aber dennoch immer setzen. Und „sprechende“ Variablennamen machen ein Programm lesbarer.
if (wert == "true")
Der Vergleich ist unnötig: wert
ist ja eine boolesche Variable, deren Wahrheitswert bei der if
-Anweisung entscheidend ist. Also einfach
if (wert)
else
{}
Das ist auch unnotig: ist der else
-Zweig leer, kann er ganz entfallen.
<a href="javascript:test()"> TEST </a>
Sowas gewöhn dir gar nicht erst an, javasript ist kein Protokoll in einem URI.
Außerdem führen Links gewöhnlich zu anderen Seiten. Für Aktionen auf einer Seite sind Buttons besser:
<form action="">
<button onclick="test()">TEST</button>
</form>
Live long and prosper,
Gunnar
if (wert == "true")
Der Vergleich ist unnötig:wert
ist ja eine boolesche Variable,
Ups, die Gänsefüßchen hatte ich ganz übersehen.
[…] deren Wahrheitswert bei der
if
-Anweisung entscheidend ist. Also einfach
if (wert)
Gilt dann nach Berücksichtigung der Anmerkung von jeanlucpicard2.
Live long and prosper,
Gunnar