我有这样简单的脚本:
(function($) {
$(document).ready(function() {
function getData() {
$.ajax({
url: '/path/to/file',
type: 'GET',
dataType: 'json',
success: function(response) {
var text = response.jsontitle;
$('#link').attr('class', '');
$('#link').attr('class', text);
// Second, Third, Fourth .... after get data
// Click fires 2, 3, 4 .... after get data
$('#link').on('click', function() {
console.log($(this).attr('class'));
})
}
});
}
var refreshData = setInterval(getData, 5000);
getData();
});
})(jQuery);
Run Code Online (Sandbox Code Playgroud)
我希望每个时间间隔只发生一次click事件.但是,当前,click事件会发生多次getData().
例如,如果getData()发生两次,则click事件也会发生两次.
首先unbind事件然后绑定,如果你想使用内部成功回调函数
$('#link').off('click').on('click'....
Run Code Online (Sandbox Code Playgroud)
或者更好地在回调函数之外绑定事件
| 归档时间: |
|
| 查看次数: |
387 次 |
| 最近记录: |