Javascript js函数未在IE 8中的数组元素中运行

Javascript js函数未在IE 8中的数组元素中运行,javascript,jquery,internet-explorer-8,Javascript,Jquery,Internet Explorer 8,当我尝试执行此代码时: $('.pagination-item')[$('.blog-item:visible').index()].addClass("active"); 在IE8中有这样一条信息: 对象不支持属性或方法“addclass” 实际上,甚至不能对$('.pagination项'[0]执行.hide()或.show()。我怀疑IE8中的数组元素管理有问题。你有什么线索吗?为什么会出现此错误?$('.pagination item')[$('.blog item:visible')

当我尝试执行此代码时:

$('.pagination-item')[$('.blog-item:visible').index()].addClass("active");
在IE8中有这样一条信息:

对象不支持属性或方法“addclass”

实际上,甚至不能对$('.pagination项'[0]执行.hide()或.show()。我怀疑IE8中的数组元素管理有问题。你有什么线索吗?为什么会出现此错误?

$('.pagination item')[$('.blog item:visible').index()]
返回dom对象引用,而不是jQuery包装器对象,因此它没有
addClass
方法

你可以用

$('.pagination item')[$('.blog item:visible').index()]
返回一个dom对象引用,而不是jQuery包装器对象,因此它没有
addClass
方法

你可以用


当您使用像这样的索引器访问jquery对象时,返回的对象是一个没有jquery方法的DOM对象。你可以试试:

$('.pagination-item:eq('+ $('.blog-item:visible').index() +')').addClass("active");

当您使用像这样的索引器访问jquery对象时,返回的对象是一个没有jquery方法的DOM对象。你可以试试:

$('.pagination-item:eq('+ $('.blog-item:visible').index() +')').addClass("active");
改变

$('.pagination-item')[$('.blog-item:visible').index()].addClass("active");

它不漂亮,但应该有用。

改变

$('.pagination-item')[$('.blog-item:visible').index()].addClass("active");


它不漂亮,但应该可以工作。

HtmleElement和Node的原型中没有addClass。HtmleElement和Node的原型中没有addClass。你是对的,我很困惑,因为它在Chrome、Safari、IE9中工作,但在IE8中没有。不管怎样,这在任何地方都有效!非常感谢。你是对的,我很困惑,因为它在Chrome、Safari、IE9中工作,但在IE8中没有。不管怎样,这在任何地方都有效!非常感谢。