javascript - jQuery 伪选择器 ":not"IE7 不工作?

标签 javascript jquery css internet-explorer

在 IE 7 和 jQuery 1.4.4 中使用 Firebug Lite。我正在尝试获取所有“.step”<div/>不是第一个的元素(现在有 2 个或 3 个,但假设有任意数量的步骤)。在 FF 和 Webkit 中工作,但注意到相同的选择器 :not:first不会在 IE7 中选择相同的元素。 jQuery 错误?这应该工作吗?您能否建议选择这些元素的替代方法?

# Firebug Lite console
>>> $('.step')
[div#step_1.step, div#step_2.step, div#step_3.step]
>>> $('.step:first')
[div#step_1.step]
>>> $('.step:not(:first)')
[div#step_1.step, div#step_2.step, div#step_3.step]

最佳答案

这不是 IE7 问题的答案,但它是一种解决方法,并且可能是一种更好的整体解决方法。

代替:

$('.step:not(:first)')

这样做:

$('.step').slice(1);

现在您正在使用一个对 querySelectorAll 有效的简单选择器,并将其简化为除第一个匹配项之外的所有匹配项。

总体而言,它应该对您有更好的表现。


编辑:

关于 IE 7 中的 :not(:first) 似乎确实存在一个 Unresolved 错误。

这是链接:http://bugs.jquery.com/ticket/4028

关于javascript - jQuery 伪选择器 ":not"IE7 不工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5107709/

相关文章:

javascript - window.outerWidth 的疯狂值

4 个方向的 jQuery 全屏幻灯片

css - 边框不连续

javascript - 如何从渲染器进程调用 Electron API 方法?

html - CSS 边框不环绕嵌套的 div

css - 如何防止菜单在此菜单中鼠标悬停时显示,并使其仅在鼠标单击时显示?

javascript - 如何在mvc4中将多个参数从 View 发送到api Controller

javascript - 从 Javascript 脚本运行 Photoshop "Action"

javascript - 在 DC.js 中删除条形图的 X 标签

php - 为什么我的 jQuery AJAX 调用会在浏览器中打开响应?