当我在 jQuery 中执行此操作并且li.notsuchelem
不存在时
$('li.notsuchelem').closest('div')
它工作正常
但是当我在原型中做同样的事情时,它给了我一个错误
$$('li.notsuchelem').up('div')
>TypeError: $$('li.notsuchelem').up is not a function
我怎样才能制作漂亮的代码:
if ($$('li.notsuchelem').length) $$('li.notsuchelem').up('div');
>>>>
var tmp;
if ((tmp = $$('li.notsuchelem')).length) tmp.up('div');
>>>>
$$('li.notsuchelem').each(function(el){el.up('div')});
与 jQuery 方式相反,一切对我来说都是丑陋的。有什么我可以做的还是我必须处理它?
好吧,我想我会接受答案,但要么我编码错误,要么我只是不喜欢 Prototype
jQuery:
$('.ss_new:not(.force_visible)', wrapper).closest('tr').hide();
原型:
wrapper.select('.ss_new:not(.force_visible)').invoke('up','tr').invoke('hide');