2013-10-29 35 views
0

我写了这两种状态之间进行切换,所以当我点击的东西就会触发这个的Javascript代码布尔

var toggle=true; 

if(toggle == true){ 
    alert('Toggle is on'); 
    toggle = false; 
} 
else{ 
    alert('Toggle is off'); 
    toggle = true; 
} 

它不断提醒切换为上。无论如何,我实际上可以在这两者之间“切换”?有更简单的方法吗?我在互联网网页上使用这个。

+1

当您的'var toggle = true;'在您的点击事件中时,您的变量将在每次点击时重置。所以放置变量外点击功能。 – nkmol

+2

其工作http://jsfiddle.net/B9ad3/ – Sachin

回答

0

这可能是因为你把var toggle=true;在函数内部,而不是函数声明之前,向我们展示了全功能的,所以我们知道你在说什么

+1

Yeap我的错愚蠢的错误,我把它包括在功能!现在把它移出来,它的工作正常! – Friedpanseller

0

确保var toggle=true位于包含if(...)代码的函数之外。否则toggle将不断初始化为true

2

简单,更优雅:

var toggle = true; 
alert(toggle ? "Toggle is on":"Toggle is off") 
toggle = !toggle 
+2

这不会解决问题 – pythonian29033

+0

@ pythonian29033可能不是,但是op也问到如何简化它。 – pax162