JavaScript 对话框和状态栏使用说明


Posted in Javascript onOctober 25, 2009

今天为大家简单介绍一下 JavaScript 对话框和状态栏。

javascript 与 对话框:

  • 三种对话框图示:

    在客户端浏览器中,三种常见的Window方法用来弹出简单对话框,它们分别是 alert(),confirm()和prompt()。alert()用于向用户显示消息。confirm()要求用户点击确认或取消。prompt()要求用户输入一个字符串。下面的三幅图分别为alert(),confirm()和prompt()。

    JavaScript 对话框和状态栏使用说明

    alert()对话框提示


    JavaScript 对话框和状态栏使用说明

    confirm()对话框提示


    JavaScript 对话框和状态栏使用说明

    prompt()对话框提示

  • 三种对话框简介:

    alert()方法弹出的对话框只是显示提示信息,对用户起提醒作用。

    confirm()方法用于询问用户是否确认,展示两个按钮——确认和取消。相当于if/else结构,如果点击确认按钮,则继续执行下面的程序,如果点击取消按钮,则返回false。

    prompt()方法带有一个输入框,其返回的内容就是用户在输入框中输入的内容。目的就是获取用户的输入。

  • 对话框阻塞进程简介:

    无论是confirm()和prompt()都会产生阻塞,也就是说,在用户关掉它们所显示的对话框之前,它们不会返回。同时也就意味着在弹出一个对话框时,代码会停止运行。如果当前正在装载文档,也会停止装载,直到用户用要求的输入进行了响应为止。没有方法可以防止这些方法产生阻塞,因为它们的返回值是用户的输入,所以在返回之前它们必须等待用户进行输入。

    在大多数浏览器中,alert()也会产生阻塞,并等待用户关闭对话框。但是在某些浏览器中(尤其是UNIX平台上的Netscape3和4),alert()方法并不产生阻塞。不过小小子在fedora11上面做测试,也是会产生阻塞的,当然我没有用netscape试验,我用的是Firefox浏览器测试,同样阻塞。不过犀牛的作者说:


在实践中,这点小小的不兼容性很少引起问题。
alert(),confirm()和prompt()的用法:
alert('这是一个alert提示,你滴明白?');
confirm('这是一个confirm提示,你是愿意看啊,还是愿意看啊?');
prompt('来,帅哥,告诉哥你的名字吧');

javascript 与 状态栏:
当用户将鼠标放在一个超链接上面的时候,浏览器会在状态栏上面显示出这个超链接所指向的url地址。但是有的时候你会发现当你的鼠标放在超链接或者图片上面的时候,状态栏的上面显示的是一些文本而不是链接地址。
在 javascript 中,浏览器的状态栏上面的内容由 Window 对象的两个属性控制,即 status 和 defaultStatus。所以通过 javascript 可以改变状态栏的默认行为,显示我们所希望显示给用户的信息。
属性status 主要用于存放瞬时消息,即当有触发事件发生的时候才会改变状态栏的信息。而defaultStatus属性指定了显示在状态栏中默认的文本。只有当触发事件发生的时候,状态栏上面的文本才会被指定的status替换,否则将一直显示defaultStatus属性指定的内容。

<!-- 
当鼠标放在上面代码的时候,状态栏会显示:鼠标放在这个链接上面,状态栏显示的内容。 
--> 
<a href='https://3water.com' target='_blank' onmouseover="window.status='鼠标放在这个链接上面,状态栏显示的内容。';return true;">三水点靠木</a>

上例中的事件处理程序必须得return true;这就通知了浏览器当事件发生的时候不应该执行自己的默认的动作,也就是说不应该在状态栏中显示链接的URL,如果忘记了return true;那么浏览器就会用它自己的URL覆盖处理程序在状态栏中显示的所有信息。

再来看一个defaultStatus的例子吧,将页面状态栏的默认值设定为:欢迎来到本站,小小子感谢您的到来。

defaultStatus = '欢迎来到本站,小小子感谢您的到来';
window.defaultStatus = defaultStatus;
代码演示及说明:

也许有的时候,各位无法看到状态栏上面显示的信息,下面给出方法,希望可以帮助大家:

in Firefox:

1. Go to Tools > Options
2. Click the Content tab
3. Ensure that the JavaScript option is checked
4. Click Advanced (next to the Enable JavaScript option)
5. Check the Change status bar text option
6. Click OK to save this screen
7. Click OK again

In Internet Explorer:

1. Go to Tools > Internet Options
2. Click the Security tab
3. Ensure that the Internet option is selected/highlighted
4. Click Custom Level… (this launches the security settings for the Internet zone)
5. Scroll down until you see Allow status bar updates via script (under the Scripting option). Click Enable
6. Click OK to save this screen
7. Click OK again

Javascript 相关文章推荐
LBS blog sql注射漏洞[All version]-官方已有补丁
Aug 26 Javascript
CSS和JS标签style属性对照表(方便js开发的朋友)
Nov 11 Javascript
如何在父窗口中得知window.open()出的子窗口关闭事件
Oct 15 Javascript
js文本框输入点回车触发确定兼容IE、FF等
Nov 19 Javascript
jquery内置验证(validate)使用方法示例(表单验证)
Dec 04 Javascript
js 数组操作之pop,push,unshift,splice,shift
Jan 29 Javascript
了不起的node.js读书笔记之mongodb数据库交互
Dec 22 Javascript
chrome调试javascript详解
Oct 21 Javascript
[原创]JQuery 在表单提交之前修改 提交的值
Apr 14 Javascript
js实现砖头在页面拖拉效果
Nov 20 Javascript
vue系列之动态路由详解【原创】
Sep 10 Javascript
解决jquery的ajax调取后端数据成功却渲染失败的问题
Aug 08 jQuery
5款Javascript颜色选择器
Oct 25 #Javascript
11款基于Javascript的文件管理器
Oct 25 #Javascript
JavaScript 三种不同位置代码的写法
Oct 25 #Javascript
JavaScript 事件的一些重要说明
Oct 25 #Javascript
javascript写的一个链表实现代码
Oct 25 #Javascript
JavaScript的变量作用域深入理解
Oct 25 #Javascript
理解JavaScript变量作用域更轻松
Oct 25 #Javascript
You might like
php 静态变量的初始化
2009/11/15 PHP
提高php运行速度的一些小技巧分享
2012/07/03 PHP
关于crontab的使用详解
2013/06/24 PHP
PHP中使用SimpleXML检查XML文件结构实例
2015/01/07 PHP
PHP实现Huffman编码/解码的示例代码
2018/04/20 PHP
帮助避免错误的Javascript陷阱清单
2009/05/31 Javascript
利用jQuery的$.event.fix函数统一浏览器event事件处理
2009/12/21 Javascript
被jQuery折腾得半死,揭秘为何jQuery为何在IE/Firefox下均无法使用
2010/01/22 Javascript
EasyUI的treegrid组件动态加载数据问题的解决办法
2011/12/11 Javascript
妙用Jquery的val()方法
2012/06/27 Javascript
JS等比例缩小图片尺寸的实例
2013/02/27 Javascript
jquery Tab效果和动态加载的简单实例
2013/12/11 Javascript
原生javascript实现图片滚动、延时加载功能
2015/01/12 Javascript
js字符串引用的两种方式(必看)
2016/09/18 Javascript
解决Extjs下拉框不显示的问题
2017/06/21 Javascript
一份超级详细的Vue-cli3.0使用教程【推荐】
2018/11/15 Javascript
vue接口请求加密实例
2020/08/11 Javascript
python中使用序列的方法
2015/08/03 Python
深入解析Python编程中super关键字的用法
2016/06/24 Python
Django使用详解:ORM 的反向查找(related_name)
2018/05/30 Python
对Python中class和instance以及self的用法详解
2019/06/26 Python
python和c语言的主要区别总结
2019/07/07 Python
python twilio模块实现发送手机短信功能
2019/08/02 Python
Python MongoDB 插入数据时已存在则不执行,不存在则插入的解决方法
2019/09/24 Python
使用python的turtle函数绘制一个滑稽表情
2020/02/28 Python
Python处理mysql特殊字符的问题
2020/03/02 Python
Python基于内置函数type创建新类型
2020/10/22 Python
HTML5 通信API 跨域门槛将不再高、数据推送也不再是梦
2013/04/25 HTML / CSS
清除canvas画布内容(点擦除+线擦除)
2020/08/12 HTML / CSS
介绍一下Java的安全机制
2012/06/28 面试题
物业管理个人自我评价
2013/11/08 职场文书
生物技术专业求职信
2014/06/10 职场文书
成绩报告单家长评语
2014/12/30 职场文书
家长意见书
2015/06/04 职场文书
面试中canvas绘制图片模糊图片问题处理
2022/03/13 Javascript
服务器nginx权限被拒绝解决案例
2022/09/23 Servers