看似正确的方式来触发Javascript函数通过链接,不工作

Seemingly correct way to trigger Javascript function via link, not working

本文关键字:函数 链接 工作 Javascript 方式      更新时间:2023-09-26

好吧,所以我一直在阅读和阅读,并准备好如何运行一些简单的Javascript代码,当一个链接被点击,但无论我尝试什么,我似乎不能让它工作!

这个想法是,当我的链接被点击时,它会改变颜色并填充一个变量,然后当它再次被点击时,它会改变为另一种颜色,并将变量返回到它原来的状态(有效地重置第一次点击)

谁能告诉我我哪里错了?

下面是我的Javascript代码:

window.onload = function() {
document.getElementById("atonal").onclick = function() {
    var categoryLink=new Array(); 
    var counter;
    categoryLink[0] = "empty";   
    categoryLink[1] = "empty";   
    categoryLink[3] = "empty";   
    counter = "0";
    if (categoryLink[0]=="empty") {
        categoryLink[0] = "atonal";
        counter = counter + 1;
        stylesheet.insertRule("#atonal {color: #FFFFFF}", 0);
    }
    if (categoryLink[0]=="atonal") {
        categoryLink[0] = "empty";
        counter = counter - 1;
        stylesheet.insertRule("#atonal {color: #474747}", 0);
    }
   return false;  
  }
}

我的HTML:

<a href="#" id="atonal">antonal sound</a>

这段代码中有两个相同的语法错误;FireBug或类似的程序会向您显示这些:

if (categoryLink[0}=="empty") {

当然,}应该是]。修复这些,您的代码将工作—或者至少,您的onclick将在您期望的时候注册和调用。

关于window.location = "http://www.google.com/";的评论是正确的。

但是,你有一个语法错误在你的最后两个IF语句:

if (categoryLink[0}=="empty") {
应:

if (categoryLink[0]=="empty") {
http://jsfiddle.net/Ekxbu/