jquery 判断内容是否存在 改变样式或class 循环遍历

<ul><li><divclass="huizong"><divclass="pingyi">我需要平移吗</div></div><divclass="panduan">... <ul>
<li>
<div class="huizong">
<div class="pingyi" >我需要平移吗</div>
</div>
<div class="panduan">35</div>
</li>
<li>
<div class="L_listinner"> <a href="" target="_blank"> <img src="imgs/640-320.jpg" /> </a>
<div class="pingyi" >我需要平移吗</div>
</div>
<div class="panduan">0</div>
</li>
<li>
<div class="L_listinner">
<div class="pingyi" >我需要平移吗</div>
</div>
<div class="panduan"></div>
</li>
<li>
<div class="L_listinner"> <a href="" target="_blank"> <img src="imgs/640-320.jpg" /> </a>
<div class="pingyi" >我需要平移吗</div>
</div>
<div class="panduan"></div>
</li>
</ul>

代码如上,若panduan内是0或者为空,则pingyi 改变样式 margin-left:105px,否则 panduan 更改为display:none 或者更改class为undis ,若li中存在 img标签,则panduan 更改为display:none 或者更改class为undis,没有分了,求教~
展开
 我来答
tenderlitch
2013-08-12 · TA获得超过174个赞
知道小有建树答主
回答量:72
采纳率:0%
帮助的人:117万
展开全部
$('.panduan').each(function(){
     var $this=$(this),
        prevPingyi=$this.prev().children('.pingyi');
     if($this.html()=='' || $this.html()=='0'){
         prevPingyi.css('margin-left','105px');
     }else{
         prevPingyi.addClass('undis');
     }
});


我猜你要改变的是与'panduan'对应的同一个父DIV内的'pingyi',以上代码放在文档最后执行,有问题请追问.

追问
有点小出入,调整了一下,正常了,不过这个,$this.prev().children中,存在 img标签,则panduan 更改为display:none 或者更改class为undis,这个代码中没有体现,应该怎么写呢
追答
$(function(){
$('.panduan').each(function(){
 var $this=$(this),prevPingyi=$this.prev().children('.pingyi');
if($this.html()=='' || $this.html()=='0'){
prevPingyi.css('margin-left','105px');
}else{
prevPingyi.addClass('undis');
}
});
//以下是当li包含img标签时 隐藏对应的panduanDIV代码
$('li:has(img)').each(function(){
$(this).find('.panduan').addClass('undis');
});
});

sorry,之前没看清楚你要求,补上.

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式