Javascript jQuery';s最接近的不';我不能在IE8/9中工作

Javascript jQuery';s最接近的不';我不能在IE8/9中工作,javascript,jquery,internet-explorer-8,Javascript,Jquery,Internet Explorer 8,我有这个jQuery代码: $(this).closest('div:has(.FIND_ME)').find('.FIND_ME').hide(); 但是类为.FIND\u ME的元素不会隐藏在IE8和IE9中 这个问题是问题的继续 HTML: 一些文本 点击这里 一些文字 结果在这里 一些文本 点击这里 一些文字 结果在这里 你说得对!我不知道为什么,但它现在起作用了!错误发生在另一个地方 因此,closest()在IE 8/9中运行良好。在jQuery 1.6上测试。我将一个变量元素设

我有这个jQuery代码:

$(this).closest('div:has(.FIND_ME)').find('.FIND_ME').hide();
但是类为
.FIND\u ME
的元素不会隐藏在IE8和IE9中

这个问题是问题的继续

HTML:


一些文本
点击这里
一些文字
结果在这里
一些文本
点击这里
一些文字
结果在这里

你说得对!我不知道为什么,但它现在起作用了!错误发生在另一个地方


因此,
closest()
在IE 8/9中运行良好。在jQuery 1.6上测试。

我将一个变量
元素设置为
this
,然后调用:

element.closest('a')
但是元素现在是DOM元素,而不是jQuery对象。因此,改为:

$(element).closest('a')

修复了它。

它在所有其他浏览器中都能工作吗?我可以向您保证
nestest()
在IE8/9中工作正常。问题将出现在您的代码中的某个地方。请在问题中添加您的相关HTML。我严重怀疑这样一个“简单”的东西不会是跨浏览器的。。。这里有一个提示:99%的情况下,问题不在于jQuery,而在于你使用它的方式,总是试图找出你做错了什么,而不是责怪jQuery,你最终会节省很多时间。它可以很好地工作:检查控制台代码中的其他地方是否有错误。尝试作为$(this.parent(“div”)。下一步(“span.FIND_ME”).hide();这在IE11中不起作用,即使它是一个Jquery对象,它仍然会给出相同的错误。请您添加一些解释,说明为什么它会问这个问题,以及它比其他答案更能说明什么?
closest = function (target, tag) {
    if (target.parentElement == "undefined") {
        return null;
    }
    if (target.parentElement.localName == tag) {
        return target.parentElement;
    }
    return this.closest(target.parentElement, tag);
};
closest = function (target, tag) {
    if (target.parentElement == "undefined") {
        return null;
    }
    if (target.parentElement.localName == tag) {
        return target.parentElement;
    }
    return this.closest(target.parentElement, tag);
};