这适用于Firefox和Internet Explorer,但不适用于Chrome,我已在多台运行Chrome的计算机上进行测试。Javascript addEventListener在Firefox和IE中工作,但不是Chrome?
有什么我错过了,导致这不工作在Chrome?
<script>
document.addEventListener('DOMContentLoaded', function() {
var dealBar = function() {
var scroll = document.documentElement.scrollTop;
var sidebarDeals = document.querySelector('#sidebar__deals');
var sidebarAdverts = document.querySelector('#sidebar__adverts');
var adBottom = sidebarAdverts.offsetTop + sidebarAdverts.clientHeight;
if (scroll > adBottom) {
sidebarDeals.className = "sidebar__deals--fixed";
} else {
sidebarDeals.className = "sidebar__deals--relative";
}
}
window.addEventListener('scroll', function(e){
dealBar();
});
dealBar();
});
</script>
我在控制台中没有错误。
定义“不起作用”。 –
在Firefox和Internet Explorer中,当滚动大于adBottom时,它会更改类名,在Chrome中它什么也不做。 – Ash
提供[mcve]演示 – charlietfl