0

だから、テキストをクリックするたびに色が変わるようなものを作ろうとしています。

Javascript:

function changecolor(){
    var tc = document.getElementById("header").style.color.value;
    if  (tc = "#000000") { tc = "#0009FF"}
    else if (tc == "#0009FF") { tc = "#FF0000"}
    else if (tc == "#FF0000") { tc = "#15FF00"}
    else if (tc == "#15FF00") { tc = "#FFA600"}
    else {tc = "#000000"};
    document.getElementById("header").style.color.value = tc;
}

html:

<div onclick="changecolor()"><h1 id="header" style="color:#000000;"> Nick's Basic Physic's Calculator </h1></div>

それは機能しておらず、その理由を理解できていません。テキストをクリックしても何も起こりません。

4

3 に答える 3

1

あなたの問題は var tc = document.getElementById("header").style.color.value;

tc = document.getElementById("header").style.color;色を変数にするには、に変更する必要があり ます。

于 2013-10-13T22:45:34.877 に答える
1

変化する

document.getElementById("header").style.color.value = tc;

document.getElementById("header").style.color = tc;

作業例:

http://jsfiddle.net/xEyLf/

于 2013-10-13T22:43:34.720 に答える
0

別の解決策があります...ここにjsfiddleがあります:http://jsfiddle.net/9zfJA/

CSSクラスを切り替えるだけで、これらのjQueryメソッド(およびjQueryライブラリ自体)を使用していることに注意してください。

hasClass(): to check if the class is present

addClass(): to add the correct class based on the condition above

removeClass(): remove all classes, I've basically built a "reset" function

それが機能する方法とあなたが望む方法にはエラーがあると思いますが、質問と同じロジックに基づいて構築しました。

于 2013-10-13T22:56:27.200 に答える