如何在javascript中编写自己的确认对话框?
-
06-07-2019 - |
题
我想写一些与javascript中的confirm()一样的东西,但是我想自己写一下,这样我就可以对对话框进行设置了。难以思考我将如何基本上强制javascript线程等待用户响应然后返回true或false。
解决方案
如果我是你,我会看一个流行的JavaScript库。大多数都包含某种模态对话框。
我为JQuery找到的一对夫妇是 jqModal 和 SimpleModal 。
当您构建模态对话框时,您必须将事件与按钮联系起来,因此您可以执行以下操作:
function askUserYesOrNo() {
var myDialog = $('<div class="mydialog"><p>Yes or No?</p><input type="button" id="yes" value="Yes"/><input type="button" id="no" value="No"/></div>');
$("#yes").click(handleYes);
$("#no").click(handleNo);
myDialog.modal(); //This would have to be replaced by whatever syntax the modal framework uses
}
function handleYes() {
//handle yes...
}
function handleNo() {
//handle no...
}
其他提示
你真的想要使用一个框架,因为你自己构建它时会遇到许多奇怪的跨浏览器问题。
我使用 jqModal (jQuery框架的插件)获得了良好的效果让你定义模态对话框,但它绝不是唯一的选择;尝试谷歌搜索 jquery modal 或 yui modal 。
对于Mootools,有 moo.rd的Custom.Confirm 和 Windoo.Confirm 供您参考。
您可以使用窗口。 showModalDialog ( mozilla ),但这是Internet Explorer引入的非标准功能。现在它也支持Firefox 3和Safari(我不确定哪个版本,但至少3.1和更高,但不是iPhone)。
不隶属于 StackOverflow