Javascript 是否仅将eventListener添加到一个html页面?
我有几个html页面,我只想在一个html页面上添加一个eventListenerJavascript 是否仅将eventListener添加到一个html页面?,javascript,jquery,html,Javascript,Jquery,Html,我有几个html页面,我只想在一个html页面上添加一个eventListener document.addEventListener('scroll', function(e){ // along the scroll, the img's opacity changes. }); 在那个html页面中,如果我滚动页面,整个页面img的可选性就会改变 问题是这个监听器也会在其他页面中触发 如何仅将此侦听器添加到一个页面 您可以使用window.location然后附加事件处理程序 i
document.addEventListener('scroll', function(e){
// along the scroll, the img's opacity changes.
});
在那个html页面中,如果我滚动页面,整个页面img的可选性就会改变
问题是这个监听器也会在其他页面中触发
如何仅将此侦听器添加到一个页面 您可以使用
window.location
然后附加事件处理程序
if(window.location.href === 'YOUR_URL') {
document.addEventListener('scroll', function(e){
//your code
});
}
或者您可以将一些id
附加到body
上,并检查其是否存在
<body id="animate-stuff">
if(document.getElementById('animate-stuff')) {
document.addEventListener('scroll', function(e){
//exec your code here
});
}
if(document.getElementById('animate-stuff')){
document.addEventListener('scroll',函数(e){
//在这里执行代码
});
}
如果标题中有此代码,请仅将其移动到该页面。您可以将该函数添加到要加载的唯一html页面中的
标记中,而不是将其放入js文件中,该文件将在您拥有的每个页面中导入。Lixus是正确的,另一个选项是向父元素添加一个类,并且仅在它存在时触发?仅将其添加到一个页面?是什么阻止您直接将其添加到一个页面?将该检查放在内部似乎不是一个好主意,将其包装在if中而不应用事件侦听器会更有意义。@epascarello哦,我的意思是,只是复制粘贴了他的代码。谢谢,我会改变的