jQuery/javascript添加类不能在ie8、ie9上工作
jQuery/javascript adding class does not work on IE 8,9
我有一个这样的div:
<div onclick="highlightFunction(<?php echo $id?>);">
我有以下js代码:
function highlightFunction(id) {
var id = "stuff" + stuff_id;
$('#boss-stuff').find('div').removeClass('highlight-stuff');
var stuff = $('#' + id).find('div')[0];
var jStuff = $(stuff);
jStuff.addClass("highlight-stuff");
}
这段代码位于一个onclick句柄函数中。
highlight-stuff类只是添加了一个背景色。
我尝试了各种方法,从javascript与document.getElementById()。className改为jQuery element.attr("class","stuff")等。所有这些都可以在各种浏览器上工作,但是ie8和ie9不起作用。背景没有改变。
请帮忙,谢谢,我真的很感激。如果你需要更多的代码,请告诉我。
一些解释:id是唯一的,因此将不会有超过一个具有相同id的元素。$('#boss-stuff')有一个$('#id')列表。$('#id')是一个li元素,有div子元素(ren)。我想给div类添加背景色
try this
var jStuff = $('#' + id).find('div')[0];
jStuff.addClass("highlight-stuff");
它在其他浏览器而不是IE
中工作的事实听起来像一些愚蠢的事情,就像不包括您的代码在DOM Ready
事件中。我记得前段时间也遇到过类似的问题。
你可以尝试(如果你的代码不在DOM ready事件中):