0

另一个 YUI3 问题。

我想向具有 2 个类的所有表行添加一个类(.two),向具有 3 个类的所有表行添加另一个类(.three)。

我在这里的另一个问题中找到了这段 JQuery 代码,我怀疑这会起作用,但需要将其转换为 YUI3 并允许添加两个类,以及以某种方式将 div 更改为:

$(function(){
    var div = $('div[class*=" "]').filter(function(){
        var clsArray = $.trim(this.className.split(' ');
        return clsArray.size > 1;
    });
    div.css('background','yellow');
});

上面例子的jsfiddle在这里:http: //jsfiddle.net/udBZy/3/

谢谢!

编辑:

这是我到目前为止所拥有的,但没有运气:(

$(function() {

    YUI().use('node', function(Y) {

        var div = Y.all()('div[class*=" "]').filter(function(){

        var clsArray = Y.all().Lang.trim(this.className).split(' ');

        return clsArray.length > 1;

        });

        div.setStyle('background','yellow');

    });  

});
4

2 回答 2

0

这是通过 YUI 论坛的解决方案。这可能对将来的某人有所帮助:

YUI().use('node', function (Y) {
    var re = / {1,}/g;
    var div = Y.all('div[class *= " "]').each(function (n) {
        var numClasses =  Y.Lang.trim(n.get("className")).split(re).length;

        n.addClass("numClasses" + numClasses);
        n.setContent(n.getContent() + " found " + numClasses);
    });
});
于 2013-07-19T11:44:51.257 回答
0

对于任何 JQuery 到 YUI 的转换,您都有http://www.jsrosettastone.com/ ,不,这并不难。在页面中搜索您的 JQuery 方法,您将找到等效方法。您将需要Y.all()node.addClass()

于 2013-07-19T06:15:44.190 回答