如何在javascript中编写自己的确认对话框?

时间:2008-10-09 19:00:57

标签: javascript modal-dialog

我想写一些与javascript中的confirm()一样的东西,但是我想自己写一下,这样我就可以对对话框进行设置了。难以思考我将如何基本上强制javascript线程等待用户响应然后返回true或false。

5 个答案:

答案 0 :(得分:5)

如果我是你,我会看一个流行的JavaScript库。大多数都包含某种模态对话框。

我发现的一对JQuery是jqModalSimpleModal

当您构建模态对话框时,您必须将事件与按钮联系起来,因此您可以执行以下操作:

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 modalyui modal以寻找其他选择。

答案 2 :(得分:1)

对于Mootools,有moo.rd's Custom.ConfirmWindoo.Confirm供您参考。

答案 3 :(得分:0)

您可以使用window。showModalDialogmozilla),但这是Internet Explorer引入的非标准功能。现在它也支持Firefox 3和Safari(我不确定哪个版本,但至少3.1和更高,但不是iPhone)。

答案 4 :(得分:0)