如何在 Javascript 中创建自定义警报功能?
使用 Javascript 自定义警报
IT技术
javascript
2021-03-13 10:10:23
6个回答
您可以覆盖对象alert
上存在的现有函数window
:
window.alert = function (message) {
// Do something with message
};
这是我想出的解决方案。我编写了一个通用函数来创建一个 jQueryUI 对话框。如果需要,您可以使用 Matt 的建议覆盖默认警报功能:window.alert = alert2;
// Generic self-contained jQueryUI alternative to
// the browser's default JavaScript alert method.
// The only prerequisite is to include jQuery & jQueryUI
// This method automatically creates/destroys the container div
// params:
// message = message to display
// title = the title to display on the alert
// buttonText = the text to display on the button which closes the alert
function alert2(message, title, buttonText) {
buttonText = (buttonText == undefined) ? "Ok" : buttonText;
title = (title == undefined) ? "The page says:" : title;
var div = $('<div>');
div.html(message);
div.attr('title', title);
div.dialog({
autoOpen: true,
modal: true,
draggable: false,
resizable: false,
buttons: [{
text: buttonText,
click: function () {
$(this).dialog("close");
div.remove();
}
}]
});
}
从技术上讲,您可以更改警报功能的作用。但是,您不能更改由本机警报功能启动的模态窗口的标题或其他行为(除了文本/内容)。
“覆盖”方式不够好,建议您创建自定义弹出框。此解决方案的最大好处是您可以控制每一个细节。
其它你可能感兴趣的问题