js:检查2个元素是否具有相同的类并执行某些操作

时间:2014-10-04 13:42:14

标签: javascript jquery

基本上我想要点击 object1 中的每个div,如果在 object2 上有相同的类,请执行某些操作。

在这种情况下,它将滚动直到相应的元素。

<div class='object1'>
   <div class='element 1'></div>
   <div class='element 2'></div>
   <div class='element 3'></div>
</div>

<div  class='object2'>
   <div class='element 1'></div>
   <div class='element 2'></div>
   <div class='element 3'></div>
</div>

2 个答案:

答案 0 :(得分:0)

如果我理解正确,当点击div.element1时,你想在object2上找到div.element1,如果存在则滚动到它。你可以使用这样的东西:

$(".object1 > div").click(function (){
    var class = $(this).attr("class");
    if ($(".object2 > div." + class).length > 0){
         var matchingDivOn2ndObject = $(".object2 > div." + class)[0];

         $('html, body').animate({
               scrollTop: matchingDivOn2ndObject.offset().top
          }, 1000);
    }
});

答案 1 :(得分:0)

刚刚与滚动一起制作Fiddle

$(".object1 div").on("click", function () {
  var classes = $(this).attr("class").split(" ");

  $('html, body').animate({
    scrollTop: $(".object2 div." + classes[1]).offset().top
 }, 1000);
});