2011-12-31 3 views
0

いいえ、リンクをクリックしたときにシンプルなJavascriptコードを実行する方法について読んで読んでいます。それが動作するように見えることはできません!リンクを介してJavascript機能をトリガーする方法が正しく表示されない

私のリンクをクリックすると、色が変わり、変数が埋め込まれ、もう一度クリックすると、別の色に変更してvarを元の状態に戻します。最初のクリック)

ここでどこが間違っているのか教えていただけますか?ここで

は、私の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> 
+0

ロードするために起こっています ' www.google.com'では、リンクの色が変わるのを見る機会がありません。 – robertc

+0

2番目の 'if'は' else if'でなければなりません。 –

+0

ああ、そうだよ。私はその機能が呼び出されているかどうかを調べるためのテストとしてそこに持っていました。 – Chrismwiggs

答えて

1

このコードでは二つの同一の構文エラーがあります。 Firebugのまたは同等のはあなたにこれらを示しているだろう:

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

}ことはもちろんの]、であるべきです。これらを修正すると、コードが正常に動作します。または、少なくとも、onclickが登録され、必要に応じて呼び出されます。

+0

小さくてシンプルなコードに邪魔しないでください!私は別の方法でおそらく働いていた4-5の方法を行った。 ありがとうございます!私もこの火かき棒をチェックアウトします。 – Chrismwiggs

+0

提案したとおりに構文エラーを修正しましたが、残念ながらまだ結果はありません。私はそれよりも私のコードでもっと間違っていると思います! – Chrismwiggs

1

window.location = "http://www.google.com/";についてのコメントは正しいです。

しかし、また、あなたはあなたの最後の2つのIF文に構文エラーがあります。

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

は次のようになります。リンクをクリックすると

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

http://jsfiddle.net/Ekxbu/

関連する問題