我的javascript有:未捕获的类型错误:无法读取控制台上空显示的属性



我想使用 setTimeout 删除我的弹出消息模式,但控制台显示以下内容:

未捕获的类型错误: 无法读取 null 的属性"删除">

我的代码:

function popupmodel(msg2) {
const mymodel1 = document.createElement('div');
const mypopbox2 = document.querySelector(".bodybg");
mymodel1.classList = `mypopbox`;
mymodel1.innerHTML = `
<div class="row mt-5 alert alert-warning alert-dismissible fade show" role="alert">
<p>${msg2}</p>
<button id="gameClose" type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
`;
mypopbox2.appendChild(mymodel1);
const closebut1 = document.querySelector('.mypopbox');
document.getElementById('gameClose').addEventListener('click', function() {
closebut1.remove();
});
setTimeout(function() {
document.querySelector('.mypopbox').remove();
}, 3000);
};

你的代码已经工作了!

function popupmodel(msg2) {
const mymodel1 = document.createElement('div');
const mypopbox2 = document.querySelector(".bodybg");
mymodel1.classList = `mypopbox`;
mymodel1.innerHTML = `
<div class="row mt-5 alert alert-warning alert-dismissible fade show" role="alert">
<p>${msg2}</p>
<button id="gameClose" type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">&times;</span>
</button>
</div>
`;
mypopbox2.appendChild(mymodel1);
const closebut1 = document.querySelector('.mypopbox');
document.getElementById('gameClose').addEventListener('click', function() {
closebut1.remove();
});
setTimeout(function() {
document.querySelector('.mypopbox').remove();
}, 3000);
};
popupmodel("hello");
<div class="bodybg">
</div>

但是,对于您提到的错误应该是由以下行引起的,这意味着它无法找到带有"mypopbox"类的任何内容。如果您仍然遇到该问题,请在 jsfiddle 中重现它并分享。

document.querySelector('.mypopbox').remove();

最新更新