0

これをターゲットにしたい:

<h3 id='month'>Oct</h3>

これは私がしました:

    var changeColor = function () {
        var monName = new Array ('Jan' ... 'Dec'); //ellipsis to make code short
        var now = new Date();

        if(monName == monName[now.getMonth()]) {
           switch(monName) {
                case 'Jan':
                   document.getElementById('month').style.backgroundColor = '#ff3300';
                   break;
                   .
                   .
                   .
                   .
                case 'Dec':
                   document.getElementById('month').style.backgroundColor = '#c2dd8a';
                   break;
                default:
                   alert('Error');

                }     
        }
};

html body 要素で関数を呼び出しました (スクリプト タグ間の外部 js ファイルは既に適切にソースされています)。

<script type='text/javascript' src='time.js'></script>
<body onload='changeColor();'>

うまくいかなかったようです。h3 要素をターゲットにする方法にエラーがあると思われます。私の全体的なアイデアは、対象となる要素の月が変わるにつれて背景色を変更することです。どんな助けでも大歓迎です。ありがとう!

4

2 に答える 2

3

ifステートメントを次のように変更してみてください。

if(document.getElementById('month').innerHTML == monName[now.getMonth()])

また、switchステートメントは次のようにする必要があります。

switch(monName[now.getMonth()])
于 2012-10-31T17:41:50.393 に答える
-1

if テストを完全に削除します。

于 2012-10-31T17:44:35.663 に答える