-1

特定のクラス内のリンクの色を変更する次の設定があります。何らかの理由で機能していません。私がやっていることのために、この構造を維持する必要があります。デフォルトでは、機能している CSS に従って、リンクの色は白です。リンクを変更するjQueryだけでは機能しません。

var link_colour = "#CCC";

function linkcolor() {
$("[class='navLink']").css("color",link_colour);
}
window.onload = linkcolor;

<ul>
<li><a class="navLink" href="#"><img src="foo1.png" />xyz</a></li>
<li><a class="navLink" href="#"><img src="foo2.png" />abc</a></li>
</ul>
4

5 に答える 5

5

を使用している場合は、jQuery決して使用したくありませんwindow.onload = fn$(document).ready(fn)または$(fn)略して使用します。

$(linkcolor);

このコードはイベントが発生した後に実行されていると推測しているwindow.onloadため、イベントのハンドラーは実行されません。 jQueryイベントがすでに発生している場合はすぐに関数を起動してこのケースを処理し、コードが確実に実行されるようにします。

ここで動作を確認してください


$('.navLink')より良いと言う他の答えも正しいです。しかし、それはあなたが持っているセレクターの単なる省略形であり、正常に動作するはずです。変更する必要がありますが、それは問題ではありません。

于 2013-03-15T23:26:47.427 に答える
1

使用する:

$('.navLink')

これは、クラス属性がに設定されているすべての要素を選択するために適切に機能しますnavLink

于 2013-03-15T23:28:57.630 に答える
1

これを jQuery に適した用語で表現する方法は次のとおりです。

var link_colour = '#CCC';
$(document).ready(function() {
    $('.navlink').css('color', link_colour);
});
于 2013-03-15T23:29:40.203 に答える
0

次のようにセレクターを使用します。

$(function(){
 var $color = '#CCC';
 $('.navLink').css('color',$color);
});
于 2013-03-15T23:28:56.403 に答える
0

そこで3点。

1) $(document).ready を使用

window.reload を使用しています。この場合は、$(document).ready を使用します。

$(document).ready(function(){
// My code
});

2) .class を使用する

[class=''] を使用しないでください。代わりに .class を使用してください。

$('.navLink')

これらは私の推奨事項であり、あなたの問題に対する私の答えです!

于 2013-03-15T23:36:30.530 に答える