Javascript jquery.css/.attr/.addClass在span标记上不起作用
我正在尝试使用jquery设置跨距的背景颜色。我使用了标题中的所有函数,但都给了我一个错误: SCRIPT438:对象不支持属性或方法“css”/“attr”/“addClass” 你知道我怎么解决这个问题吗?所有我想改变的是背景颜色,但我更喜欢,如果我可以设置类 代码:Javascript jquery.css/.attr/.addClass在span标记上不起作用,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我正在尝试使用jquery设置跨距的背景颜色。我使用了标题中的所有函数,但都给了我一个错误: SCRIPT438:对象不支持属性或方法“css”/“attr”/“addClass” 你知道我怎么解决这个问题吗?所有我想改变的是背景颜色,但我更喜欢,如果我可以设置类 代码: value不是jQuery对象(它是DOM对象) 这: 应该是: $(value).css('background-color', '#D94A38'); 查看以获取更多信息。该函数为您提供DOM对象而不是jQuery对象
value
不是jQuery对象(它是DOM对象)
这:
应该是:
$(value).css('background-color', '#D94A38');
查看以获取更多信息。该函数为您提供DOM
对象而不是jQuery
对象
改为
$(value).css('background-color', '#D94A38');
你的代码是
var liList = ul.find('li span');
$.each(liList, function(index, value){
if(value.innerText == currPage){
$(value).css('background-color', '#D94A38');
}
});
我认为,如果用$(value)替换value,您的问题将得到解决,正如Aleksandr所说,您需要显示代码。在我们找到工作之前,我们看不出哪里出了问题@jerome.s是的,我在同一个函数中使用它,这个函数工作得很好,注意DOM元素中的innerText用法。你可以使用$(value)作为替代。因为@James Hill是第一个回答的人,我不得不接受他的回答。不过还是要谢谢你:)
$(value).css('background-color', '#D94A38');
var liList = ul.find('li span');
$.each(liList, function(index, value){
if(value.innerText == currPage){
$(value).css('background-color', '#D94A38');
}
});