JQuery $(elmnt +“div”)。每个都有办法做到这一点?

时间:2013-08-22 20:11:08

标签: javascript jquery html html5

我搜索了互联网,甚至不确定javascript语言中的问题。我所要做的就是更改所选表行列中div元素的CSS。此外,我希望这样做没有太多膨胀,如.children(),因为我只想选择div孩子而不是其他任何东西。 基本上我在elmnt中有一个存储的选定表行列,并且想要遍历它内部的每个div元素。这是代码

$(elmnt + " div").each(function (i){//also tried $(elmnt.div)...  and $(elmnt +".div")...
    if(this.style.cssFloat==="right")
        this.style.cssFloat="none";
    else
       this.style.cssFloat="right";
});

我得到的错误是:

  

错误:语法错误,无法识别的表达式:[object HTMLTableCellElement] .div @ ./resources/jquery-1.9.0.min.js:1567

感谢您的帮助

3 个答案:

答案 0 :(得分:6)

您可以使用find来实现您的目标

Documentation here

$(elmnt).find("div").each(...

答案 1 :(得分:4)

你想:

$(elmnt).find('div').each( // ...

答案 2 :(得分:4)

您无法连接对象和字符串,但您可以这样做:

$("div", elmnt).css('float', function(_,flt) {
    return flt == 'right' ? 'none' : 'right';
});