2009-10-16 97 views
1

有无论如何创建一个警告框,但具有更现代的风格?发出警告框时,用户无法使用浏览器,直到它被确认(输入密钥或单击确定)。我想用相同的方式锁定浏览器,但是使用定制的,更好看的警告框。这可能与JavaScript?需要javascript确认,如alert()

感谢

编辑:为了澄清,通过锁定我的意思是不能改变的网址,打开新的标签页等。用户需要确认,才可以切换到另一个网页浏览器

回答

10

是的。您所指的对话类型是模式对话框。实现的基本原理是用另一个元素简单地覆盖页面上的其他元素,以使它们不可点击。

只需使用“javascript模式对话框”显示丰富的信息;我无法希望在这个小小的空间里提供一个全面的解释。

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

+0

(虽然OP的编辑答案是“否”) – Nickolay 2009-10-16 07:33:53

+0

感谢您的回答,它在我编辑之前和之后都是非常好的答案。 – Lobe 2009-10-16 07:55:38

+1

我很高兴有没有办法,因为虽然我正在处理的应用程序是一个新奇的应用程序,但我不想如果这能够完成,网络会是什么样子 – Lobe 2009-10-16 07:57:42

1

看到这个一个

Dialog

使用jQuery

jQuery Alert Dialogs (Alert, Confirm, & Prompt Replacements)

编辑

您的编辑:我不使用的JavaScript就可以防止用户键入它到地址栏或打开一个新的标签认为。并且避免做这些让用户阻碍他正常行为的事情。

+0

是在我的答案中使用jQuery的投票吗? – rahul 2009-10-16 07:11:25

3

是的,它们被称为“模态对话框”。 JQuery有一个excellent dialog widget,它可以作为其JQueryUI library的一部分进行模态操作,它可以承载任何类型的内容,包括表单。

+0

我不知道为什么这些天Javascript简单地意味着jquery。 :D – 2009-10-16 07:16:09

+2

因为它使开发更容易,而无需处理浏览器依赖关系。 – rahul 2009-10-16 07:17:06

0

这在JavaScript中不可行。您可以使用类似facebox的容器来模拟模态行为,但不存在本机模式,即当出现“模态窗口”时,JavaScript代码不会停止执行。

1

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