0

私はjqueryを初めて使用します.....以下のコードに疑問があります.....btnをクリックすると、対応する親divのみが移動するはずです。以下のコードを確認してください。前もって感謝します。

<script type="text/javascript"> 
     $(document).ready(function(e) { 
         $('.btn').click(function(){ 
             $('.aaa').animate({'left':'500'},500); 
             return false;
         }); 
     });
</script> 
</head> 
<body> 
   <div class="cnt">
      <div class="aaa" style="width:50px; height:50px; background-color:red; position:relative"></div>
      <a href="#" class="btn">Btn</a>
   </div>
   <div class="cnt">
      <div class="aaa" style="width:50px; height:50px; background-color:red; position:relative"></div>
      <a href="#" class="btn">Btn</a></div>
4

5 に答える 5

1
 $(document).ready(function(e) { 
     $('.btn').click(function(){ 
         // the siblings .aaa of this button.
         $(this).siblings('.aaa').animate({'left':'500'},500); 
         return false;
     }); 
 });
于 2012-07-26T07:13:53.830 に答える
0

このようにしてみてください:

$(this).prev('.aaa').animate({'left':'500'},500); 
于 2012-07-26T07:12:49.873 に答える
0

CSSプロパティLEFTには、PXサフィックスを含む値が必要です

$('.aaa').animate({'left':'500'},500); return false;}); });

次のように更新してみてください。

$('.aaa').animate({'left':'500px'},500)}); return false;});
于 2012-07-26T07:16:56.670 に答える
0

prev()を使用して、クリックしたボタンの前の兄弟と一致させることができます。これは適切な<div>要素になります。

 $(".btn").click(function() { 
     $(this).prev().animate({
         left: "500px"
     }, 500); 
     return false;
 });
于 2012-07-26T07:13:46.583 に答える
0
$('.btn').click(function(){ 
  $('.aaa',this).animate({'left':'500'},500); 
  return false; 
}); 
于 2012-07-26T07:14:49.340 に答える