当我尝试执行此代码时:
$('.pagination-item')[$('.blog-item:visible').index()].addClass("active");
IE8中有消息:
object不支持属性或方法'addclass'
实际上甚至不能.hide()或.show()可以再次执行$('。pagination-item')[0]。我怀疑IE8中的数组元素管理有问题。你有什么线索吗?为什么会出现此错误?
答案 0 :(得分:2)
$('.pagination-item')[$('.blog-item:visible').index()]
返回一个dom对象引用,而不是jQuery包装器对象,因此它没有addClass
方法。
您可以使用.eq()
$('.pagination-item').eq($('.blog-item:visible').index()).addClass("active");
答案 1 :(得分:1)
使用这样的索引器访问jquery对象时,返回的对象是没有jquery方法的DOM对象。你可以尝试:
$('.pagination-item:eq('+ $('.blog-item:visible').index() +')').addClass("active");
答案 2 :(得分:0)
更改
$('.pagination-item')[$('.blog-item:visible').index()].addClass("active");
到
var index = $('.blog-item:visible').index();
$('.pagination-item').eq(index).addClass("active");
它不漂亮,但它应该有用。