【发布时间】:2011-12-21 10:49:39
【问题描述】:
我已经使用以下代码在 IE7 和 8 中实现了一些 jQuery 来伪造 nth-of-type:
$.expr[':']['nth-of-type'] = function(elem, i, match) {
var parts = match[3].split("+");
return (i + 1 - (parts[1] || 0)) % parseInt(parts[0], 10) === 0;
};
$("div>section.subcontent:nth-of-type(3)").addClass('nth-three');
$("div>section.subcontent:nth-of-type(4)").addClass('nth-four');
但它只适用于 Chrome 和其他浏览器...有什么想法吗?由于 JS 的重点是依赖 JS,CSS 在 IE 兼容性方面失败。
谢谢
【问题讨论】:
-
尝试使用这个插件(添加所有“类型”选择器):github.com/keithclark/JQuery-Extended-Selectors
-
同样的问题是类只添加到已经支持选择器的浏览器中,而不是实际添加到不支持选择器的浏览器中
-
那么这里的 sn-p 呢:stackoverflow.com/questions/2093355/…?你用的是什么版本的jQuery?
-
使用 1.6.4 并且它在 Chrome 中运行,所以它更像是一个 IE 问题。
-
嗯,很明显它只有在浏览器实际实现选择器时才有效,所以 sn-p 可能根本不起作用。
标签: jquery