下面的三幅图分别为alert(),confirm()和prompt()。
alert()方法弹出的对话框只是显示提示信息,对用户起提醒作用。
confirm()方法用于询问用户是否确认,展示两个按钮————确认和取消。相当于if/else结构,如果点击确认按钮,则继续执行下面的程序,如果点击取消按钮,则返回false。
prompt()方法带有一个输入框,其返回的内容就是用户在输入框中输入的内容。目的就是获取用户的输入。
无论是confirm()和prompt()都会产生阻塞,也就是说,在用户关掉它们所显示的对话框之前,它们不会返回。同时也就意味着在弹出一个对话框时,代码会停止运行。如果当前正在装载文档,也会停止装载,直到用户用要求的输入进行了响应为止。没有方法可以防止这些方法产生阻塞,因为它们的返回值是用户的输入,所以在返回之前它们必须等待用户进行输入。
在大多数浏览器中,alert()也会产生阻塞,并等待用户关闭对话框。但是在某些浏览器中(尤其是UNIX平台上的Netscape3和4),alert()方法并不产生阻塞。不过小小子在fedora11上面做测试,也是会产生阻塞的,当然我没有用netscape试验,我用的是Firefox浏览器测试,同样阻塞