我似乎得到了一个脚本错误,提到了 Bootstrap 警报和我自己的关闭警报标签。我有一个脚本,当创建脚本时,它会在2.5秒后关闭警报。它与用户操作相关联,例如,如果用户创建博客文章或删除评论,一个警报显示与用户任务,然后自动关闭标记。我似乎是得到一个未捕获的TypeError在控制台,不能找出原因。我只能推测,这是因为它正在寻找一个警报消息,这是不存在的?
script.js
// // Event listener for auto close message function using DOM Content Loaded
// // Javascript function for auto close messages
// document.addEventListener("DOMContentLoaded", alertTimeout);
document.addEventListener("DOMContentLoaded", (alertTimeoutalertTimeout) => {
setTimeout(function () {
let messages = document.getElementById("msg");
let alert = new bootstrap.Alert(messages);
alert.close();
}, 2500);
});
字符串
index.html引导脚本
<!-- Bootstrap Scripts -->
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js"
integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo"
crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js"
integrity="sha384-C6RzsynM9kWDrMNeT87bh95OGNyZPhcTNXj1NW7RuBCsyN/o0jlpcV8Qyq46cDfL"
crossorigin="anonymous"></script>
</html>
Uncaught TypeError: Cannot read properties of null (reading 'defaultPrevented')
at Q.close (alert.js:38:60)
at script.js:11:11
close @ alert.js:38
(anonymous) @ script.js:11
setTimeout (async)
(anonymous) @ script.js:7
型
Alert.js
似乎是显示为错误的EVENT_CLOSE
// Public
close() {
const closeEvent = EventHandler.trigger(this._element, EVENT_CLOSE)
if (closeEvent.defaultPrevented) {
return
}
this._element.classList.remove(CLASS_NAME_SHOW)
const isAnimated = this._element.classList.contains(CLASS_NAME_FADE)
this._queueCallback(() => this._destroyElement(), this._element, isAnimated)
}
型
我尝试添加一个文档准备脚本,并尝试了不同的方法来编写和加载脚本,但似乎是相同的结果一如既往。我也尝试使用旧版本的bootstrap js链接,它的作品,所以没有控制台错误,但后来我的模态和导航栏崩溃停止工作,所以我必须有正确版本的脚本。
1条答案
按热度按时间o4hqfura1#
使用下面的代码..
字符串