2016-04-26 11 views
0

aufrufen Kann nicht verstehen, warum das Onclick-Ereignis aufgerufen wird, wenn ich die Datei ausführen, wenn es aufgerufen werden soll, wenn ich auf das Div klicke.Das Onclick-Ereignis wird aufgerufen, wenn ich die Seite

Code:

<html> 
<head> 
<link rel="Stylesheet" type="text/css" href="shoppingcart.css"> 
</head> 
<script type="text/javascript"> 
var count=0; 
function swap()//cannot understand why it is running on loading the page 
{ 
    if(count==0) 
    { 
    document.getElementById('log').style.display='none'; 
    count++; 
    } 
    else 
    { 
    document.getElementById('log').style.display='block'; 
    count=0; 
    } 
} 
</script> 
<body> 
<div onclick="swap()" style="padding-left:30px;height:100px;width:300px;float:left;margin-right:180px" > 
<h1 style="center">LOG IN</h1> 
</div> 
<div id="log" class="block border goudystout"> 
Email:<input type="email"/> 
Password:<input type="password"/> 
</div> 
</body> 
</html> 
+0

Wir müssen mehr Code sehen. – HaukurHaf

+0

class = "block border goudystout", vielleicht setzen Sie ** block ** class display: block **! Wichtig **; also klappt es nicht. – Nabi

Antwort

1

wilde Vermutung. Sie setzen swap() als Ihren div click-Handler und nicht swap und damit seine Ausführung beim Laden der Seite.

+0

Ich hatte Recht :-) –

+0

nach dem Austausch von swap() zu onclick tauschen, es immer noch das gleiche – Taylor

+0

es sollte nicht, es sei denn, es gibt einige andere Code, den Sie hier nicht angezeigt haben. Stellen Sie sicher, dass Sie keine zwischengespeicherte Version Ihrer Datei testen. Ändern Sie den Methodennamen, setzen Sie alert oder console.log und testen Sie. –

0

Zum einen, können Sie das Skript Abschnitt in-zwischen dem Körper haben und die Kopf Abschnitte, sollte es in dem Körper Abschnitt sein. Dies ist wahrscheinlich der Hauptgrund, warum es nicht wie erwartet funktioniert.

Gemäß diesem Artikel: http://www.simplehtmlguide.com/javascript.php ...

Es ist legal, die Klammern in dem Aufruf haben, könnten Sie versuchen, ein Semikolon, nachdem sie setzen, aber Javascript muss das automatische Semikolon Einsetzen der Handhabung sein.

0

Der Code funktioniert gut für mich

Es bedeutet, dass Sie ein Problem in Ihrer CSS-Datei haben, vielleicht Display: Block wichtig; für .block Klasse

<div id="log" class="block border goudystout"> 

, dass Ihr Code

Löse es bricht!

+0

Nein der Block nur die Abmessungen des div in meiner CSS-Datei specefies – Taylor

Verwandte Themen