没有类名的jQuery Masonry Child选择器

时间:2012-09-27 22:25:19

标签: jquery html html-lists jquery-masonry

我的砌体有问题。

这是我需要应用砌体的地方。

<ul class="text">
  <li> 
       <ul>
            <li> <!--Trying to apply masonry only  here-->
               <ul>
                  <li></li><!--Not here-->
               </ul>     
             </li>
            <li> <!--Trying to apply masonry only here-->
               <ul>
                  <li></li> <!--Not here-->
               </ul>     
             </li>
        </ul> 
   </li>
</ul> 

仅对第二个ul的li标签应用砌体。如果我没有为每个li标签添加一个类,那么砌体将无法正常工作,因为它还会将其添加到下一个ul&gt; li。如果我像这样为每个li添加一个类,我可以让它工作,但是使用php有点复杂。

<ul class="text">
      <li> 
           <ul>
                <li class="class"> <!--Trying to apply masonry only  here-->
                   <ul>
                      <li></li><!--Not here-->
                   </ul>     
                 </li>
                <li class="class"> <!--Trying to apply masonry only here-->
                   <ul>
                      <li></li> <!--Not here-->
                   </ul>     
                 </li>
            </ul> 
       </li>
    </ul>   

使用此:

   $("ul.text > li > ul").masonry({
                itemSelector : '.class'
            });

但我不想添加课程。我尝试了类似的东西,但它继续将砖石应用于所有的li标签。

    $("ul.text> li > ul").masonry({
        itemSelector : 'li'
    }); 

如果不申请课程,有没有办法解决这个问题?

由于

2 个答案:

答案 0 :(得分:0)

来自文档

  

将项目元素过滤到选择器。如果没有设置,Masonry默认为   使用容器的子元素。

     

建议避免使用其中任何其他隐藏元素的砌体   布局逻辑。

所以我认为你应该删除itemSelector : 'li'根据文件证明它是正确的

答案 1 :(得分:0)

尝试

itemselector : 'ul.text> li > ul > li'