0

我对砌体有问题。

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

<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 >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'
    }); 

有没有办法在不申请课程的情况下做到这一点?

谢谢

4

2 回答 2

0

尝试

itemselector : 'ul.text> li > ul > li'
于 2012-09-27T22:38:46.143 回答
0

来自文档

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

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

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

于 2012-09-27T22:36:05.770 回答