2012-07-25 88 views
-1

我是新手JavaScript程序员,我总是遇到setInterval的问题。 W3Schools使它看起来很简单,但当我需要时,我永远无法使它工作。在这里,我有一个跨度,我想做'闪光'。为什么我遇到setInterval问题?

var id = window.setInterval(function(){ 
      if($("#span1").css("color") == "red"){ 
       $("#span1").css("color","blue"); 
      } 
      else{ 
       $("#span1").css("color","red");} 
     }, 100); 

我一直收到SYNTAX ERROR: Unexpected token ILLEGAL。我在这里做错了什么?

注意:我知道有一些jQuery方法可以轻松处理。我试图更好地理解这个JS函数。

UPDATE我修正了语法错误。 (缺少引文)。现在我收到错误undefined

+0

另外,不要使用W3Schools的。见http://w3fools.com – 2012-07-25 20:36:28

+0

噢,停下来,@LeeTaylor - 当你是新手时,w3schools是一个非常有用的地方,需要大量的例子,没有太多的噪音。当他知道自己在做什么时,那么你可以将他送到MDN,因为他无聊而且技术精确。 – Blazemonger 2012-07-25 20:43:01

+1

NITPICK:'$(“#span1”)'一遍又一遍地使用是不好的做法。 '$(“#span1”)'是“昂贵的”查找。做一次,将其存储到一个变量并引用该变量。 – epascarello 2012-07-25 20:43:32

回答

3

您可能复制并粘贴了代码,并且其中包含一些不良字符。尝试在新文件中手动重新输入代码。

侧面说明,就可以使整个事情很多更有效和可靠的地狱:

(function() { 
    var thespan = document.getElementById('span'), 
     toggle = true; 
    window.setInterval(function() { 
     toggle = !toggle; 
     thespan.style.color = toggle ? "red" : "blue"; 
    },100); 
})(); 
+0

这工作完美!谢谢。 – ExceptionLimeCat 2012-07-25 20:37:02

相关问题