我想写一些与javascript中的confirm()一样的东西,但是我想自己写一下,这样我就可以对对话框进行设置了。难以思考我将如何基本上强制javascript线程等待用户响应然后返回true或false。
答案 0 :(得分:5)
如果我是你,我会看一个流行的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...
}
答案 1 :(得分:3)
你真的想要使用一个框架,因为你自己构建它时会遇到许多奇怪的跨浏览器问题。
我使用jqModal获得了很好的结果,这是一个jQuery框架的插件,可以让你定义模态对话框,但它绝不是唯一的选择;尝试谷歌搜索jquery modal或yui modal以寻找其他选择。
答案 2 :(得分:1)
对于Mootools,有moo.rd's Custom.Confirm和Windoo.Confirm供您参考。
答案 3 :(得分:0)
您可以使用window。showModalDialog(mozilla),但这是Internet Explorer引入的非标准功能。现在它也支持Firefox 3和Safari(我不确定哪个版本,但至少3.1和更高,但不是iPhone)。
答案 4 :(得分:0)