根据http://api.jquery.com/category/selectors/我们可以在jQuery中使用大量的CSS选择器,那里没有提到:nth-last-child()
。然而,当我测试以下(使用jQuery 1.7.1从谷歌),但实际上,而不是在IE 8仿真模式IE 9作用于火狐,Chrome和IE 9:jQuery真正支持哪些CSS3选择器:第n-最后孩子()?
$('li:nth-last-child(2)').css('color', 'red');
那么,什么是发生了什么?它看起来好像jQuery生成的CSS代码,如li:nth-last-child(2) { color: red }
,并以某种方式注入它,然后在支持使用选择器的浏览器上工作正常。但那会很奇怪。
最重要的是,是否有一些技巧让jQuery支持所有浏览器上的这种选择器?
当然,应该指出的是,jQuery选择可以使用扩展:'$ .expr [ ':'] [ '第n个最后一个孩子'] =函数(){...};' – zzzzBov 2012-07-31 17:09:12
@ zzzzBov:感谢您的提醒!我已经提到,在编辑中,现在我正试图想出自己的实现... – BoltClock 2012-07-31 17:43:25
@BoltClock它在http://api.jquery.com/nth-of-type-选择器/ _it“[借用]从CSS 1-3,然后[添加]自己的”选择器._ – 2013-01-21 09:28:29