jQuery data()和'changeData'事件

Cor*_*ing 7 jquery

我可以click向HTML元素添加一个事件并让click事件更新$(document).data(key,value).

然后这将触发$(document).bind('changeData', function() {...})).知道这一点,找出更新哪个HTML元素的最佳方法是$(document).data()什么?

例如:

$(document).bind('changeData', function {
  // get the anchor that set $(document).data()
});

$('a').click(function() {
  $(document).data('key', 'value');
});
Run Code Online (Sandbox Code Playgroud)

Rob*_*oss 3

对于点击事件的数据:

$('#elementSelector').click(function(e){
    $(document).data(key, val);
});

$(document).bind('changeData', function(e){
    // e.target?
});
Run Code Online (Sandbox Code Playgroud)

如果没有,请尝试将目标存储在存储的数据中:

$('#elementSelector').click(function(e){
    $(document).data(key, {
        val: 'value',
        target: e.target
    });
});
Run Code Online (Sandbox Code Playgroud)

然后当你有更改事件时:

$(document).bind('changeData', function(e){
    var data = $(this).data(key);
    var target = data.target;
    var value  = data.val;
});
Run Code Online (Sandbox Code Playgroud)