JavaScript 對(duì)話框和狀態(tài)欄使用說(shuō)明
今天為大家簡(jiǎn)單介紹一下 JavaScript 對(duì)話框和狀態(tài)欄。
javascript 與 對(duì)話框:
- 三種對(duì)話框圖示:
在客戶端瀏覽器中,三種常見(jiàn)的Window方法用來(lái)彈出簡(jiǎn)單對(duì)話框,它們分別是 alert(),confirm()和prompt()。alert()用于向用戶顯示消息。confirm()要求用戶點(diǎn)擊確認(rèn)或取消。prompt()要求用戶輸入一個(gè)字符串。下面的三幅圖分別為alert(),confirm()和prompt()。
alert()對(duì)話框提示
confirm()對(duì)話框提示
prompt()對(duì)話框提示
- 三種對(duì)話框簡(jiǎn)介:
alert()方法彈出的對(duì)話框只是顯示提示信息,對(duì)用戶起提醒作用。
confirm()方法用于詢問(wèn)用戶是否確認(rèn),展示兩個(gè)按鈕——確認(rèn)和取消。相當(dāng)于if/else結(jié)構(gòu),如果點(diǎn)擊確認(rèn)按鈕,則繼續(xù)執(zhí)行下面的程序,如果點(diǎn)擊取消按鈕,則返回false。
prompt()方法帶有一個(gè)輸入框,其返回的內(nèi)容就是用戶在輸入框中輸入的內(nèi)容。目的就是獲取用戶的輸入。
- 對(duì)話框阻塞進(jìn)程簡(jiǎn)介:
無(wú)論是confirm()和prompt()都會(huì)產(chǎn)生阻塞,也就是說(shuō),在用戶關(guān)掉它們所顯示的對(duì)話框之前,它們不會(huì)返回。同時(shí)也就意味著在彈出一個(gè)對(duì)話框時(shí),代碼會(huì)停止運(yùn)行。如果當(dāng)前正在裝載文檔,也會(huì)停止裝載,直到用戶用要求的輸入進(jìn)行了響應(yīng)為止。沒(méi)有方法可以防止這些方法產(chǎn)生阻塞,因?yàn)樗鼈兊姆祷刂凳怯脩舻妮斎耄栽诜祷刂八鼈儽仨毜却脩暨M(jìn)行輸入。
在大多數(shù)瀏覽器中,alert()也會(huì)產(chǎn)生阻塞,并等待用戶關(guān)閉對(duì)話框。但是在某些瀏覽器中(尤其是UNIX平臺(tái)上的Netscape3和4),alert()方法并不產(chǎn)生阻塞。不過(guò)小小子在fedora11上面做測(cè)試,也是會(huì)產(chǎn)生阻塞的,當(dāng)然我沒(méi)有用netscape試驗(yàn),我用的是Firefox瀏覽器測(cè)試,同樣阻塞。不過(guò)犀牛的作者說(shuō):
在實(shí)踐中,這點(diǎn)小小的不兼容性很少引起問(wèn)題。
alert(),confirm()和prompt()的用法:
alert('這是一個(gè)alert提示,你滴明白?');
confirm('這是一個(gè)confirm提示,你是愿意看啊,還是愿意看啊?');
prompt('來(lái),帥哥,告訴哥你的名字吧');
javascript 與 狀態(tài)欄:
當(dāng)用戶將鼠標(biāo)放在一個(gè)超鏈接上面的時(shí)候,瀏覽器會(huì)在狀態(tài)欄上面顯示出這個(gè)超鏈接所指向的url地址。但是有的時(shí)候你會(huì)發(fā)現(xiàn)當(dāng)你的鼠標(biāo)放在超鏈接或者圖片上面的時(shí)候,狀態(tài)欄的上面顯示的是一些文本而不是鏈接地址。
在 javascript 中,瀏覽器的狀態(tài)欄上面的內(nèi)容由 Window 對(duì)象的兩個(gè)屬性控制,即 status 和 defaultStatus。所以通過(guò) javascript 可以改變狀態(tài)欄的默認(rèn)行為,顯示我們所希望顯示給用戶的信息。
屬性status 主要用于存放瞬時(shí)消息,即當(dāng)有觸發(fā)事件發(fā)生的時(shí)候才會(huì)改變狀態(tài)欄的信息。而defaultStatus屬性指定了顯示在狀態(tài)欄中默認(rèn)的文本。只有當(dāng)觸發(fā)事件發(fā)生的時(shí)候,狀態(tài)欄上面的文本才會(huì)被指定的status替換,否則將一直顯示defaultStatus屬性指定的內(nèi)容。
<!--
當(dāng)鼠標(biāo)放在上面代碼的時(shí)候,狀態(tài)欄會(huì)顯示:鼠標(biāo)放在這個(gè)鏈接上面,狀態(tài)欄顯示的內(nèi)容。
-->
<a href='http://www.dbjr.com.cn' target='_blank' onmouseover="window.status='鼠標(biāo)放在這個(gè)鏈接上面,狀態(tài)欄顯示的內(nèi)容。';return true;">腳本之家</a>
上例中的事件處理程序必須得return true;這就通知了瀏覽器當(dāng)事件發(fā)生的時(shí)候不應(yīng)該執(zhí)行自己的默認(rèn)的動(dòng)作,也就是說(shuō)不應(yīng)該在狀態(tài)欄中顯示鏈接的URL,如果忘記了return true;那么瀏覽器就會(huì)用它自己的URL覆蓋處理程序在狀態(tài)欄中顯示的所有信息。
再來(lái)看一個(gè)defaultStatus的例子吧,將頁(yè)面狀態(tài)欄的默認(rèn)值設(shè)定為:歡迎來(lái)到本站,小小子感謝您的到來(lái)。
defaultStatus = '歡迎來(lái)到本站,小小子感謝您的到來(lái)';
window.defaultStatus = defaultStatus;
代碼演示及說(shuō)明:
也許有的時(shí)候,各位無(wú)法看到狀態(tài)欄上面顯示的信息,下面給出方法,希望可以幫助大家:
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
相關(guān)文章
關(guān)于eval 與new Function 到底該選哪個(gè)?
本篇文章小編將為大家介紹,關(guān)于eval 與new Function 到底該選哪個(gè)?有需要的朋友可以參考一下2013-04-04Javascript實(shí)例教程(19) 使用HoTMetal(4)
Javascript實(shí)例教程(19) 使用HoTMetal(4)...2006-12-12javaScript arguments 對(duì)象使用介紹
函數(shù)體內(nèi)可以通過(guò) arguments 對(duì)象來(lái)接收傳遞進(jìn)來(lái)的參數(shù),下面有個(gè)不錯(cuò)的示例,大家可以感受下2013-10-10