【发布时间】:2018-01-10 03:06:50
【问题描述】:
我在一个小部件中有这个 JS 代码,它在小部件加载的页面上运行良好。但是在页面上给出了错误(“new.js?ver=0.0.1:92 Uncaught TypeError: Cannot read property 'querySelector' of null”),它没有显示在此处的 jS 代码中 -
var
carousel = document.querySelector('.threedcarousel'),
figure = carousel.querySelector('figure'),
nav = carousel.querySelector('nav'),
numImages = figure.childElementCount,
theta = 2 * Math.PI / numImages,
currImage = 0
;
nav.addEventListener('click', onClick, true);
function onClick(e) {
e.stopPropagation();
var t = e.target;
if (t.tagName.toUpperCase() != 'BUTTON')
return;
if (t.classList.contains('next')) {
currImage++;
}
else {
currImage--;
}
figure.style.transform = `rotateY(${currImage * -theta}rad)`;
}
据我了解,由于小部件未加载其他页面,因此出现错误,但我如何解决错误?试过了还是不行
if(typeof carousel == 'undefined') {
var carousel = document.querySelector('.threedcarousel')
}
【问题讨论】:
-
当然你的意思是
if( typeof carousel != 'undefined' ) { ...对吧? -
是的,也试过了。任何其他解决方法建议?
-
你应该把这整件事包装成
if声明 -
@MaciejKwas 感谢您的评论。我采取了不同的路线并从这个答案中解决了这个问题 - stackoverflow.com/questions/9578348/…
标签: javascript wordpress