JavaScript FAQ(七)

五、对话框

1. 警告(Alert

Q:我如何从JavaScript产生警告信息?

A:要产生警告信息,可以使用alert()方法:

alert('Message goes here')

上面的按钮由下面的代码创建:

  1. <formname=myform>
  2. <inputtype=buttonvalue="Tryitnow"
  3. onClick="alert('HellofromJavaScript!')">
  4. </form>

2. 确认对话框(Confirm Dialog

Q:我如何通过JavaScript生成一个“确认/退出”对话框?

A:要生成“确认/退出”对话框,可以使用confirm()方法:

if (confirm("Your question)) { 
// do things if OK
}

上面的按钮由一下代码创建:

  1. <formname=myform>
  2. <inputtype=buttonvalue="Tryitnow"
  3. onClick="if(confirm('Formattheharddisk?'))
  4. alert('Youareverybrave!');
  5. elsealert('Awisedecision!')">
  6. </form>

3. 提示输入对话框(Prompt

Q:我如何通过JavaScript生成一个提示用户输入对话框?

A:可以使用prompt()方法生成提示用户输入的对话框:

prompt('Prompt text','Suggested input')

上面的按钮由下面的代码创建:

  1. <formname=myform>
  2. <inputtype=buttonvalue="Tryitnow"
  3. onClick="f=prompt('Enteryourname','Name');
  4. alert('Hello'+f+'!')">
  5. </form>

4. 退出的提示输入对话框(Canceled prompt

Q:如何用户点击了退出按钮,那么prompt()将会返回什么值呢?

A:被退出的prompt()的返回值和浏览器有关。一些浏览器返回是null,而另外一些返回是空字符串''。因此,在调用prompt()时可以使用下面的代码:

  1. userInput=prompt('Prompttext','Suggestedinput');
  2. if(userInput!=''&&userInput!=null){
  3. //dosomethingwiththeinput
  4. }

5. 查找对话框(Find Dialog

Q:在JavaScript中如何调用浏览器的查找对话框?

A:在Netscape Navigator 4.0或者更新的浏览中可以使用window.find()调用其查找对话框。点击试试:

这里例子的代码是:

  1. <form>
  2. <inputtype=buttonvalue="Find(Netscapeonly)"
  3. onClick="if(navigator.appName=='Netscape'
  4. &&parseInt(navigator.appVersion)>3)window.find();
  5. elsealert('Yourbrowserdoesnotsupport\'window.find()\'!')
  6. ">
  7. </form>

Internet Explorer不支持window.find()。不过在Internet Explorer和Netscape Navigator中都可以使用脚本查找文本,参见搜索文本

6. 书签:添加到收藏夹(Bookmarks: Add Favorite

Q:我如何调用浏览器的添加到收藏夹对话框?

A:在Internet Explorer 4.0或者更新版本浏览器中,你可以通过window.external.AddFavorite调用浏览器“添加到收藏夹”对话框:

window.external.AddFavorite('URL','bookmark text').
Netscape Navigator没有类似的方法(或者说在根本就没有“添加到收藏夹”)。所以,你的脚本只能提示Netscape用户使用Navigator菜单或者快捷键创建书签(参见下面的例子):

示例:在Internet Explorer中,脚本创建的链接会打开“添加到收藏夹”对话框。在Netscape中,脚本会提示用户点击“Bookmarks” | “Add bookmark”或者按Ctrl-D来创建一个书签。

示例的源代码是:

  1. if(navigator.appName=="Netscape"){
  2. document.write(
  3. 'Tobookmarkthissite,click'
  4. +'<b>Bookmarks|Addbookmark</b>'
  5. +'orpress<b>Ctrl+D</b>.'
  6. )
  7. }
  8. elseif(parseInt(navigator.appVersion)>3){
  9. document.write(''
  10. +'<aonMouseOver="self.status=\'Bookmarkthissite\'"'
  11. +'onMouseOut="self.status=\'\'"'
  12. +'href="javascript:window.external.AddFavorite'
  13. +'(\'http://www.JavaScripter.net/faq/\','
  14. +'\'JavaScripter.netFAQ\')">'
  15. +'Clickheretobookmarkthissite</a>.'
  16. )
  17. }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值