获取未单击的div的data属性

时间:2014-12-08 04:23:30

标签: javascript jquery

我有两个div。

<div class="my_thing" data-id="123"></div>

<div class="my_thing" data-id="529"></div>

点击div后,我想获得点击的div的data-id,以及未点击的data-id。所以我最终得到了这个对象:

{
  clicked_id = 123,
  not_clicked_id = 529
}

我该怎么做?这是我到目前为止所做的。

$('.my_thing').click(function(){
  var clicked_id = $(this).attr('data-id');
  var not_clicked_id = ?????
});

1 个答案:

答案 0 :(得分:3)

如果只有2 .my_thing个元素,那么您可以使用.not()之类的

&#13;
&#13;
var $divs = $('.my_thing').click(function() {
  var clicked_id = $(this).attr('data-id');
  var not_clicked_id = $divs.not(this).attr('data-id');

  log(clicked_id + '-' + not_clicked_id)
});


var log = (function() {
  var $log = $('#log');
  return function(msg) {
    $('<p/>', {
      text: msg
    }).prependTo($log)
  }
})();
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div class="my_thing" data-id="123">123</div>
<div class="my_thing" data-id="529">529</div>

<div id="log"></div>
&#13;
&#13;
&#13;