javascript - 为什么 JavaScript toLowerCase 不起作用?

标签 javascript jquery

在这个 fiddle 中 http://jsfiddle.net/CBxbT/29/ ,如果您单击黑框,则会选择一种随机颜色,然后在其 id 被剥离并更改为小写后,随机颜色的 id 将与您通过单击三个框之一“猜测”的任何颜色进行比较。

fiddle 有效,但相同的概念(即相同的代码但不同的元素名称)在我的实时网站上不起作用。在我的实时网站上,我收到变量 guess 的警报,但后来我不再收到警报,而在 fiddle 中,它继续运行并在 ran< 后给我一个警报 改为小写。

我的操作方式是否有问题,可能会导致我的实际网站出现问题。

ran = ran.toLowerCase();

来自 fiddle 的代码

$("#red, #blue, #green").click(function(e) { 
     guess = $(this).attr('id'); 
     alert(guess);
     ran = ran.toLowerCase(); //works here but not on my live site
    alert(ran);
    if(ran.charAt(1) === 'f'){
        ran = ran.slice(3);
    } else
        ran = ran.slice(1);
        alert(ran);

     if (guess === ran) { 
         $('#results').fadeOut(1000);
              } else { 
                  $('#wrong').fadeOut(1000); 
                  }
 }); 

我的直播网站 my actual site

点击开始按钮。它将显示随机选择的音频播放器。

单击底行数字中的一个拼写数字。那是你的“猜测”

根据代码,它应该提醒您随机选择的音频播放器编号,但它没有。

现场相关代码

$("#one, #two, #three, #four, #five, #six, #seven, #eight, #nine, #ten, #eleven, #twelve, #thirteen, #fourteen, #fifteen, #sixteen").click(function(e) { 
     guess = $(this).attr('id'); 
     alert(guess);
     ran = ran.toLowerCase(); 
     alert(ran);
     if(ran.charAt(1) === 'f'){
        ran = ran.slice(3);
    } else
        ran = ran.slice(1);
     alert(ran);
     if (guess === ran) { 
         $('#right').fadeIn(1000);
              } else { 
                  $('#wrong').fadeIn(1000); 
                  }
 }); 
}

最佳答案

如果您查看 JavaScript 错误控制台,您会看到:

ran is undefined

我建议您开始使用 Firebug 或类似的工具,以便在开发时看到错误控制台。

在您的实时网站上,点击“开始”按钮的事件有这一行:

var ran = getRandom(myArray, true);

var 关键字创建一个名为 ran 的局部变量,因此您正在创建一个新变量而不是初始化全局变量。从该行中删除 var,它应该可以工作。

关于javascript - 为什么 JavaScript toLowerCase 不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6759733/

相关文章:

javascript - react : Can I add attributes to children's resultant HTML?

javascript - 如何使用 json 形式的参数重定向到同一页面

javascript - 将 li 元素移动到列表顶部

javascript - 为什么 Angular ChartJS 中的一个标签上有更多列?

javascript - Apexcharts - React js Unhandled Rejection (TypeError) : t. 每个都不是函数

jquery - 为什么我在 Internet Explorer 7.0 和 8.0 中遇到错误?

javascript - jquery .children() 的 .get()

Javascript 停止输入多个类名

javascript - 触发点击带有主题标签的 URL

jquery - 显示带有文本 :hover? 的图像的最简单方法是什么