3

私のサイトでは JavaScript のみを使用する必要があります。しかし、私はJavaScriptの基本しか知りません。CSSセレクターに似ているため、jQueryで要素を選択するのは非常に簡単です。しかし、私はこれまでJavaScriptでやったことがありません。

これは、javascript に変換する必要がある jQuery コードです。

$('ul#goto li:eq(1) a').css("color","white");
$('ul#goto li:not(:eq(1)) a').css("color","grey");

これを達成する方法がわかりません。誰でもこれについて私を助けることができますか?

HTML コード:

<ul id="goto">
<li><a href="javascript:sliders[0].goTo(0)">.</a></li>
<li><a href="javascript:sliders[0].goTo(1)">.</a></li>
<li><a href="javascript:sliders[0].goTo(2)">.</a></li>
<li><a href="javascript:sliders[0].goTo(3)">.</a></li>
<li><a href="javascript:sliders[0].goTo(4)">.</a></li>
</ul>

if(condition)
$('ul#goto li:eq(1) a').css("color","white");
$('ul#goto li:not(:eq(1)) a').css("color","grey");
else
$('ul#goto li:eq(2) a').css("color","white");
$('ul#goto li:not(:eq(2)) a').css("color","grey");
4

3 に答える 3

2

これを試して、

var li = document.getElementById('goto').getElementsByTagName('li');
for(var i=0; i<li.length; i++){
    if(i==1){
        li[i].children[0].style.color = 'white';
    }else{
        li[i].children[0].style.color = 'grey';
    }
}

アップデート:

IE では、上記のコードでうまくいきました。なぜうまくいかないのかわかりません。

とにかく、以下のコードを試してください、

var li = document.getElementById('goto').getElementsByTagName('li');
for(var i=0; i<li.length; i++){
    if(i==1){
        li[i].getElementsByTagName('a')[0].style.color = 'white';
    }else{
        li[i].getElementsByTagName('a')[0].style.color = 'grey';
    }
}

デモ: http://jsfiddle.net/CsLXk/3/

于 2012-11-19T05:56:49.627 に答える
2
$('ul#goto li:eq(1) a').css("color","white");
$('ul#goto li:not(:eq(1)) a').css("color","grey");

次のものに置き換えることができます。

document.getElementById('goto').children[1].children[0].style.color = "white";

var lis = document.getElementById('goto').children;
for( var i=0; i<lis.length; i++) {
    if (i==1) continue;
    lis[i].children[0].style.color = "grey";
}
于 2012-11-19T05:46:22.460 に答える
0

ちょうど試して

 document.getElementById('mydiv').style.color = 'white';
于 2012-11-19T05:39:37.633 に答える