我正在尝试根据URL修改类的css。这是当前不工作的代码:
JS:
<script>
//<![CDATA[
if (location.pathname == "/SearchResults.asp"
|| location.pathname.indexOf("-s/") != -1
|| location.pathname.indexOf("_s/") != -1)
$('.colors_productname span').css("background-color", "#F7F7F7");
//]]>
</script>
HTML:
<div>
<a href="#" class=
"productnamecolor colors_productname" title="Cracked Pepper"><span itemprop=
'name'>Cracked Pepper</span></a><br />
<div>
<div>
<b><font class="pricecolor colors_productprice"><span class=
"PageText_L483n">$11.00</span></font></b>
</div>
<img src="#" /></div>
</div>
注意:
我无法更改HTML,它是自动生成的
HTML的网址包含“/ Meats-s /”,所以它应该被第二个if条件定位。
我可以在普通的.css文件中使用相同的css选择器(.colors_productname span)编辑它,但这不起作用。
答案 0 :(得分:6)
在DOM Ready handler
$(function() {
// Your code
});
将代码包含在上面的处理程序中将确保代码仅在元素在DOM中可用之后运行。
使用===
代替==
总是更快。
此外,您似乎多次使用window.location
。考虑缓存它。
$(function() {
var loc = location.pathname;
if (loc === "/SearchResults.asp" || loc.indexOf("-s/") !== -1
|| loc.indexOf("_s/") !== -1
$('.colors_productname span').css("background-color", "#F7F7F7");
});