用jQuery重写。 enter.addEventListener('click', function() { if (this.dataset.id) { update(this.dataset.id) } else { add() } })
时间: 2024-02-14 16:03:30 浏览: 13
使用jQuery重写后的代码如下:
```
$(document).on('click', '#enter', function() {
if ($(this).data('id')) {
update($(this).data('id'));
} else {
add();
}
});
```
这里同样使用了jQuery的事件委托方式,将事件绑定在整个document上,通过选择器来指定目标元素。同时也使用了jQuery的data方法来获取或设置元素的data-id属性。
相关问题
用jQuery重写。 chaBtn.addEventListener('click', cancelFn) cancel.addEventListener('click', cancelFn) function cancelFn() { film.style.display = 'none' enter.removeAttribute('data-id') }
使用重写后的代码如下:
```
$(document).on('click', '#chaBtn, #cancel', function() {
cancelFn();
});
function cancelFn() {
$('#film').hide();
$('#enter').removeAttr('data-id');
}
```
这里同样使用了jQuery的事件委托方式,将事件绑定在整个document上,通过选择器来指定目标元素。同时也使用了jQuery的hide方法来隐藏元素,removeAttr方法来移除元素的data-id属性。
window.addEventListener(keyup, this.keyup, true);执行多次
根据提供的引用内容,无法直接回答窗口对象的addEventListener()方法执行多次的问题。但是可以根据提供的引用内容,给出一个解决方案,以避免重复触发事件的问题。可以使用flag变量控制事件的触发,具体实现方法如下:
```javascript
var flag = false;
window.addEventListener('keyup', function() {
if (flag) {
return;
}
flag = true;
// do something...
flag = false;
});
```