1

无论如何要创建一个警报框,但具有更现代的风格?发出警告框时,用户在确认之前不能使用浏览器(输入键或单击确定)。我想以同样的方式锁定浏览器,但是使用定制的、更好看的警报框。这可以用javascript吗?

谢谢

编辑:澄清一下,锁定浏览器是指无法更改网址、打开新标签等。用户需要先确认才能切换到另一个页面

4

5 回答 5

10

是的。您所指的那种对话框是模态对话框。实现的基本原则是简单地用另一个元素覆盖页面上的其余元素,使其不可点击。

只需谷歌搜索“javascript modal dialog”即可显示大量信息;我不希望在这个狭小的空间里提供一个全面的解释。

[edited -Nickolay] 这样的对话框不会像 alert() 那样阻止进一步的 JavaScript 执行,也不会阻止用户访问浏览器的其余部分(其他选项卡和位置栏)。用户可以继续使用浏览器是一件好事,这也是创建此类页面模式对话框的原因之一。

于 2009-10-16T07:06:49.523 回答
3

是的,它们被称为“模态对话框”。 JQuery有一个出色的对话框小部件,它可以作为其JQueryUI 库的一部分进行模态化,可以承载几乎任何类型的内容,包括表单。

于 2009-10-16T07:05:40.420 回答
1

不,我不认为模态对话框解决了他的问题。(不是说我有解决方案,只是表达我的意见)。当您使用模态对话框时,您无法访问的唯一控件是网页内的控件,但可以很好地访问浏览器的控件(即菜单,地址栏);

于 2009-10-16T07:28:08.077 回答
1

看到这个

对话

使用 jQuery

或者

jQuery 警报对话框(警报、确认和提示替换)

编辑

对您的编辑:我不认为使用 javascript 可以阻止用户将其输入到 url 栏或打开新标签。并且要避免做这些让用户妨碍他正常行动的事情。

于 2009-10-16T07:05:33.800 回答
0

这在 javascript 中是不可能的。您可以使用类似 facebox 的容器来模拟模态行为,但没有原生模态,即当“模态窗口”出现时,javascript 代码不会停止执行。

于 2009-10-16T07:08:29.777 回答