YUI 3讓你寫
Y.all(".foo").removeClass("bar");
YUI 3鏈
但是它不允許寫
Y.all(".foo").removeClass("bar").set("innerHTML", "baz");
似乎所有的「業務」方法總是終止通話鏈。
這意味着YUI 3只提供jQuery提供的鏈接權限的一半。
有誰知道這是爲什麼,如果有解決方法嗎?
YUI 3讓你寫
Y.all(".foo").removeClass("bar");
YUI 3鏈
但是它不允許寫
Y.all(".foo").removeClass("bar").set("innerHTML", "baz");
似乎所有的「業務」方法總是終止通話鏈。
這意味着YUI 3只提供jQuery提供的鏈接權限的一半。
有誰知道這是爲什麼,如果有解決方法嗎?
奧倫
顯然你已經意識到這一點,但要完成這個線程對於那些誰後來在其絆倒 -
http://tech.groups.yahoo.com/group/ydn-javascript/message/45375
總之,這是一個錯誤(由奧倫開)和它在這裏被跟蹤:
http://yuilibrary.com/projects/yui3/ticket/2525997
-Eric
看來,因爲Y.all返回一個事物列表,在removeClass之後,返回一個對象數組,而不是Node對象。
但是,如果你使用
Y.get("#foo").removeClass("bar").set("innerHTML", "baz");
一切按你期望的,因爲它的工作對單個對象。
也許你應該告訴YUI的人,看看reporting a bug。也許這是預期的行爲,但我認爲你想要做的更強大。