开发者

Is there a "not equal to" selector in Prototype js?

I have this function in Jquery which basically says when you click on the ID "MyID" do a fadetoggle of all the li tags where the class is not equal to "nav":

开发者_JS百科
$("#MyID").click(function () {
    $('li[class!="nav"]').fadeToggle("fast", "linear");
});

Is there a way to do this in Prototype js? Specifically is there a way to use a selector that selects a class != (not equal to) something?


Try this,

     $("MyID").click(function () {
              $$('li :not(.nav)').fadeToggle("fast", "linear");
      });

Hope this helps...


From the Prototype documentation:

Supported CSS syntax

...

  • Attribute selectors: the full CSS 2.1 set of [attr], [attr=value], [attr~=value] and [attr|=value]. It also supports [attr!=value]. If the value you're matching against includes a space, be sure to enclose the value in quotation marks ([title="Hello World!"]).

So the 'not equal to' comparator still works, you only need to remember to use the $$ function.

However as tylermwashburn points out it can be different with class names.

Event.observe('MyID', 'click', function() {
    Effect.multiple($$('li:not(.nav)'), function(element){
        Effect.toggle(element, 'appear');
    });
});

The selector :not(.nav) is the same as :not(class~=nav) as explained here

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜