Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/389.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么设置间隔有问题?_Javascript_Jquery - Fatal编程技术网

Javascript 为什么设置间隔有问题?

Javascript 为什么设置间隔有问题?,javascript,jquery,Javascript,Jquery,我是一名javascript程序员新手,在setInterval方面总是有问题。学校让它看起来很简单,但我永远无法让它在我需要的时候工作。这里我有一个跨度,我想做“闪光” var id = window.setInterval(function(){ if($("#span1").css("color") == "red"){ $("#span1").css("color","blue"); }

我是一名javascript程序员新手,在
setInterval
方面总是有问题。学校让它看起来很简单,但我永远无法让它在我需要的时候工作。这里我有一个跨度,我想做“闪光”

var id = window.setInterval(function(){
             if($("#span1").css("color") == "red"){
                 $("#span1").css("color","blue");
             }
             else{
                 $("#span1").css("color","red");}
         }, 100);
我一直收到一个
语法错误:意外标记非法
。我做错了什么

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


更新我修复了语法错误。(缺少报价)。现在我得到一个错误
未定义

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

顺便说一句,你可以让整个事情变得更加高效和可靠:

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

另外,不要使用w3schools。看,哦,别这样,@leetylor--w3schools是一个非常有用的地方,当你是一个新手,需要很多没有噪音的例子时。当他知道自己在做什么时,你就可以把他送到MDN,因为他在技术上的准确性既枯燥又冗长。吹毛求疵:
$(“#span1”)
反复使用是不好的做法<代码>$(“#span1”)是“昂贵的”查找。执行一次,将其存储到一个变量中并引用该变量。@epascarello。部分原因是我想要掌握原始javascript。我希望能够在不严重依赖jQuery的情况下进行开发。同样的事情也可以应用于常规JavaScript,您不应该有多行getElementById()来查找同一元素。只是让代码运行更高效。有些东西在书里查东西。合上这本书,不得不再查一遍。将书打开到该页可以节省时间。