【发布时间】:2018-01-30 08:12:03
【问题描述】:
我最近一直在为我的网站编写一些动画,并且它在本地运行良好,但是第二次我推送它并尝试访问页面(由 GithubPages 托管)它向我抛出了错误。
Uncaught TypeError: Cannot read property 'addEventListener' of null(…)
我去了,我做了一些研究,发现了这个页面:https://teamtreehouse.com/community/error-uncaught-typeerror-cannot-read-property-addeventlistener-of-null
还有这个:
Cannot read property 'addEventListener' of null
我尝试应用这些解决方案,但它仍然不起作用。一些解决方案说这可能是因为该元素不存在。嗯,既然元素是body元素,那么它100%存在,而且肯定已经定义好了。
我真的希望我没有犯一些愚蠢的错误!!那会很尴尬。
JS附在下面,错误发生在document.body.addEventListener("mousemove", function(ev) {
var possibleImages = [
"assets/images/Moana.jpg",
"assets/images/GuitarPlaying.png",
"assets/images/Cheese.jpg",
"assets/images/CryptoPhoto.jpg",
"assets/images/LogoSmall.png",
"assets/images/Group5.jpg"
];
document.body.addEventListener("mousemove", function(ev) {
if (Math.random() < 0.85) {
return;
}
const index = Math.round(Math.random() * possibleImages.length);
const image = possibleImages[index];
const el = document.createElement("img");
document.body.appendChild(el);
el.classList.add('emoji');
el.src = image
el.offsetLeft; // forces layout
el.style.left = (event.clientX-410) + 'px';
el.style.top = (event.clientY-50) + 'px';
el.style.transform = 'translate(' + (Math.random() * -1000 + 500) + 'px, 1200px) scale(0)';
el.addEventListener('transitionend', () => {
el.remove()
})
}, true);
【问题讨论】:
标签: javascript html css animation web