我想在javascript中写一些类似于confirm()的东西,但我想自己写,这样我就可以给对话框设置皮肤了。在思考我如何基本上强制javascript线程等到用户响应然后返回true或false时遇到了麻烦。
Bialecki
问问题
12309 次
5 回答
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...
}
于 2008-10-09T19:03:34.350 回答
3
您真的想为此使用一个框架,因为您在尝试自己构建它时会遇到许多奇怪的跨浏览器问题。
我使用jqModal取得了不错的效果,这是一个用于 jQuery 框架的插件,可让您定义模式对话框,但这绝不是唯一的选择;尝试谷歌搜索jquery modal或yui modal以获得一些替代方案。
于 2008-10-09T19:10:08.970 回答
1
对于 Mootools,有moo.rd 的 Custom.Confirm和Windoo.Confirm供大家参考。
于 2008-10-10T01:06:24.603 回答
0
你可以使用窗口。showModalDialog ( mozilla ),但它是 Internet Explorer 引入的非标准功能。现在 Firefox 3 和 Safari 也支持它(我不确定哪个版本,但至少 3.1 和更高版本,但不是 iPhone)。
于 2008-10-09T19:51:45.003 回答
0
一个简单的 YUI 模态灯箱(示例):
于 2008-10-10T00:37:19.763 回答