用原生方法优化下面代码,实现绑定事件前先移除事件 document.addEventListener('fullscreenchange', () => { if (!checkIsFullScreen()) { console.log('退出全屏') console.log(elvideo) elvideo.pause() $(${data_taskId} video).attr({ controls: false }) $(${data_taskId} .play).show() $(${data_taskId} span).show() } })
时间: 2024-02-18 07:23:17 浏览: 17
function fullscreenChangeHandler() {
if (!checkIsFullScreen()) {
console.log('退出全屏');
console.log(elvideo);
elvideo.pause();
document.querySelector(`${data_taskId} video`).setAttribute('controls', false);
document.querySelector(`${data_taskId} .play`).style.display = 'block';
document.querySelector(`${data_taskId} span`).style.display = 'block';
}
}
document.removeEventListener('fullscreenchange', fullscreenChangeHandler);
document.addEventListener('fullscreenchange', fullscreenChangeHandler);
相关问题
优化下面代码,绑定事件前先移除事件 document.addEventListener('fullscreenchange', () => { if (!checkIsFullScreen()) { console.log('退出全屏') console.log(elvideo) elvideo.pause() $(`${data_taskId} video`).attr({ controls: false }) $(`${data_taskId} .play`).show() $(`${data_taskId} span`).show() } })
$(document).off('fullscreenchange').on('fullscreenchange', function() {
if (!checkIsFullScreen()) {
console.log('退出全屏');
console.log(elvideo);
elvideo.pause();
$(`${data_taskId} video`).attr({ controls: false });
$(`${data_taskId} .play`).show();
$(`${data_taskId} span`).show();
}
});
触发 document.addeventlistener绑定的事件
当发生与指定事件类型匹配的事件时,document.addeventlistener绑定的事件将被触发。这意味着当用户执行与绑定事件相关的操作时,比如点击、滚动、键盘输入等,document.addeventlistener绑定的事件就会被调用。
例如,在文档加载完成后,我们可以通过document.addeventlistener绑定一个click事件,这样当用户点击文档任何地方时,click事件就会被触发并执行对应的操作。同样,我们也可以通过document.addeventlistener绑定其它类型的事件,如mouseover事件,当鼠标移动到文档的特定区域时,mouseover事件就会被触发。
需要注意的是,不同类型的事件有不同的触发条件和回调函数处理逻辑,开发者需要了解每种事件的具体使用方法和相关属性,以适配不同的需求。同时,也要注意在事件绑定的过程中避免出现重复绑定或者解绑缺失的问题,以保证事件处理的准确性和效率。