从 jQuery 1.9.selector
开始,jQuery 对象的属性已被移除。(究竟为什么,我有点困惑)。我实际上在一些独特的场景中使用它,我知道我可以做其他事情来防止这种情况发生。只是想知道是否有人知道从 1.9 开始获取选择器的另一种方法?
$('#whatever').selector // (would of returned '#whatever')
我需要.selector的一个例子是,当我已经有一组按名称的复选框时,我想在该组中查看哪个复选框被选中:
var $test = $('input[name="test"]');
console.log( $test );
console.log( $(':checked', $test).attr('id') ); // returns --undefined--
console.log( 'now with .selector: ');
console.log( $($test.selector + ':checked').attr('id') ); // returns correct
来自文档: jQuery 对象上的 .selector 属性
jQuery 对象上已弃用的 .selector 属性的剩余目的是支持已弃用的 .live() 事件。在 1.9 中,jQuery 不再尝试在链式方法中维护此属性,因为 .live() 从未支持使用链式方法。不要在 jQuery 对象上使用 .selector 属性。jQuery Migrate 插件不会尝试维护此属性。