html代码: <!--监控状态列表循环 Start-->
  <div class="videoList2">
    <div class="videoTop_open2"></div>
<div class="videoMiddle">
<div class="videoMiddleLeft"><img src="images/others/off.jpg" /></div>
<div class="videoMiddleRight"><ul><li>Hanjvn第0000000322号门禁控制器</li></ul></div>
</div>
    <div class="videoBot_open2"></div>
  </div>
<!--监控状态列表循环 End-->
<!--监控状态列表循环 Start-->
  <div class="videoList2">
    <div class="videoTop_open2"></div>
<div class="videoMiddle">
<div class="videoMiddleLeft"><img src="images/others/off.jpg" /></div>
<div class="videoMiddleRight"><ul><li>Hanjvn第0000000322号门禁控制器</li></ul></div>
</div>
    <div class="videoBot_open2"></div>
  </div>
<!--监控状态列表循环 End-->
<!--监控状态列表循环 Start-->
  <div class="videoList2">
    <div class="videoTop_open2"></div>
<div class="videoMiddle">
<div class="videoMiddleLeft"><img src="images/others/open.jpg" /></div>
<div class="videoMiddleRight"><ul><li>Hanjvn第0000000322号门禁控制器</li></ul></div>
</div>
    <div class="videoBot_open2"></div>
  </div>
<!--监控状态列表循环 End--> 我想把所有img src="images/others/off.jpg"元素(蓝色的),它的叔叔元素的class改为“videoMiddleRight2”(红色的)
我自己写的JQuery:$(document).ready(function() {
          for(var i=0,len=$('.videoMiddle').length;i<len;i++)
             {
                 
                  var $videoMiddle=$($('.videoMiddle')[i]);
                  var $uncle=$videoMiddle.find('.videoMiddleRight');
                  var $img=$videoMiddle.find('.videoMiddleLeft').find('img');
                  
                  if($img.attr("src")=="images/others/off.jpg")
                         {
                              $uncle.attr("class","videoMiddleRight2");
                         }
             }
})可是好像不行啊,智能改变第一个的class。。
跪求高手指教。

解决方案 »

  1.   


    <script language="javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
    <script language="javascript">
    window.onload=function(){
    $("img[src$='images/others/off.jpg']").each(function(){
    $(this).parent().next("div").attr("className", "videoMiddleRight2");
    })}
    </script><!--监控状态列表循环 Start-->
    <div class="videoList2">
    <div class="videoTop_open2"></div>
    <div class="videoMiddle">
    <div class="videoMiddleLeft"><img src="images/others/off.jpg" /></div>
    <div class="videoMiddleRight"><ul><li>Hanjvn第0000000322号门禁控制器</li></ul></div>
    </div>
    <div class="videoBot_open2"></div>
    </div>
    <!--监控状态列表循环 End-->
    <!--监控状态列表循环 Start-->
    <div class="videoList2">
    <div class="videoTop_open2"></div>
    <div class="videoMiddle">
    <div class="videoMiddleLeft"><img src="images/others/off.jpg" /></div>
    <div class="videoMiddleRight"><ul><li>Hanjvn第0000000322号门禁控制器</li></ul></div>
    </div>
    <div class="videoBot_open2"></div>
    </div>
    <!--监控状态列表循环 End-->
    <!--监控状态列表循环 Start-->
    <div class="videoList2">
    <div class="videoTop_open2"></div>
    <div class="videoMiddle">
    <div class="videoMiddleLeft"><img src="images/others/open.jpg" /></div>
    <div class="videoMiddleRight"><ul><li>Hanjvn第0000000322号门禁控制器</li></ul></div>
    </div>
    <div class="videoBot_open2"></div>
    </div>
      

  2.   


    <script type="text/javascript">
    //<![CDATA[
    $(function(){
    $('.videoMiddleLeft img[src$="off.jpg"]').parent().next('.videoMiddleRight').removeClass().addClass('videoMiddleRight2');
    })
    //]]>
    </script>#3的就可以~
      

  3.   

    通过循环那个方法来都添加,earchfor()好像是这个方法
    不知道你可以下一个api手册,里面蛮详细的http://download.csdn.net/source/2535984
    这个里面有,很详细的。。我就是查这个文档。。不清楚的问我
      

  4.   

    $(function () {
         $("img[src*='off.jpg']").each(function () {
             $(this).parent().next().addClass("videoMiddleRight2").removeClass("videoMiddleRight");
         });
    })