我想写一些与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)。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top