版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
培訓(xùn)資料名稱:Web開發(fā)(技術(shù)講解)所屬班組:xx匯報(bào)人:xxJavascript對(duì)象
Javasmp提供了非常有用的內(nèi)置對(duì)象來幫助網(wǎng)頁編程人員編寫更精彩實(shí)用的頁面。一個(gè)Javascript對(duì)象是由屬性和方法兩個(gè)基本要素構(gòu)成的。屬性主要是指對(duì)象內(nèi)部所包含的一些自己的情況。方法是表示對(duì)象可以做的事情,例如,人可以吃飯、睡覺、學(xué)習(xí)等;而飛機(jī)可以起飛、降落等。通過訪問或者設(shè)置對(duì)象的屬性,并且調(diào)用對(duì)象的方法,就可以使對(duì)象具有各種各樣的形態(tài),完成各種各樣的任務(wù)。對(duì)象包含屬性和方法,使用對(duì)象也就是調(diào)用它的屬性和方法。在調(diào)用對(duì)象的屬性和方法時(shí),最常用的方法是采用“對(duì)象屬性”和“對(duì)象、方法”的方式來完成的。Javascript的內(nèi)置對(duì)象1、預(yù)定義對(duì)象預(yù)定義對(duì)象是系統(tǒng)(Javascript或?yàn)g覽器)提供的已經(jīng)定義好了的對(duì)象,用戶可以直接使用它們。預(yù)定義對(duì)象包括Javascript的內(nèi)置對(duì)象和瀏覽器對(duì)象。①內(nèi)置對(duì)象Javascript將一些非常常用的功能預(yù)先定義成對(duì)象,用戶可以直接使用,這種對(duì)象就是內(nèi)置對(duì)象。這些內(nèi)置對(duì)象可以幫助用戶在設(shè)計(jì)自己的腳本時(shí)實(shí)現(xiàn)一些最常用最基本的功能。
②瀏覽器對(duì)象瀏覽器對(duì)象是瀏覽器提供的對(duì)象?,F(xiàn)在,大部分瀏覽器可以根據(jù)系統(tǒng)當(dāng)前的配置和所裝載的頁面為Javascript提供一些可供使用的對(duì)象。例如,在前面用到的document對(duì)象就是一個(gè)十分常用的瀏覽器對(duì)象。在Javascript程序中可以通過訪問這些瀏覽器對(duì)象,獲得一些相應(yīng)的服務(wù)。Javascript內(nèi)置對(duì)象Math對(duì)象;Date對(duì)象;String對(duì)象;Array對(duì)象;Number對(duì)象;Boolean對(duì)象;Function對(duì)象;Global對(duì)象;Object對(duì)象;RegExp對(duì)象;Event對(duì)象。2、用戶自定義對(duì)象雖然可以在Javascript中通過使用預(yù)先定義的對(duì)象完成強(qiáng)大的功能,但是一些高級(jí)用戶還需要按照某些特定的需求創(chuàng)建自己的對(duì)象,Javascript為他們提供了自己創(chuàng)建對(duì)象的支持。在這里就不做介紹了。Math對(duì)象
Math對(duì)象是Javascript提供的數(shù)學(xué)運(yùn)算對(duì)象,它為用戶提供了進(jìn)行所有基本數(shù)學(xué)計(jì)算的功能和常量的屬性和方法。
Math對(duì)象的屬性是數(shù)學(xué)中經(jīng)常要用到的常量,如圓周率PI、1/2的平方根、log10E等。而Math對(duì)象擁有的方法則是一些十分常用的數(shù)學(xué)函數(shù),如sin()、tan()、random()等。Math方法例1在調(diào)用Math對(duì)象的屬性和方法時(shí),直接寫成:Math.屬性和Math.方法。<HTML><HEAD><TITLE>編寫Javascript腳本</TITLE><scriptLanguage="javascript">radius=prompt("請(qǐng)輸入園的半徑:","請(qǐng)?jiān)谶@里輸入圓的半徑");alert("圓的周長(zhǎng)"+2*Math.PI*radius+",圓的面積是"+Math.PI*radius*radius+"。");</script></HEAD></HTML>例2<HTML><HEAD><TITLE>編寫Javascript腳本</TITLE><scriptLanguage="javascript">con=true;while(con==true){r1=Math.round(Math.random()*10);r2=Math.round(Math.random()*10);r3=Math.round(Math.random()*10);result1=prompt(String(r1)+"+"+String(r2)+"+"+String(r3)+"=?","請(qǐng)?jiān)谶@里寫出加法結(jié)果");result2=r1+r2+r3;
if(Number(result1)==result2){con=confirm("你真聰明,答對(duì)了!再來一遍嗎?");if(con==false){alert("歡迎下次再來。");break;}}else{con=confirm("對(duì)不起,你沒有答對(duì),再來一遍嗎");if(con==false){alert("歡迎下次再來。");break;}}}</script></HEAD></HTML>new運(yùn)算符和對(duì)象操作語句new運(yùn)算符是Javascript的一個(gè)十分重要而且常用的對(duì)象運(yùn)算符。在Javascript的內(nèi)置對(duì)象中,除了Math對(duì)象以外,其他對(duì)象都要使用new運(yùn)算符來為它們創(chuàng)建一個(gè)變量,完成這個(gè)工作后,就可以使用內(nèi)置對(duì)象的屬性和方法了。例如:month=newArray()
Javasmp還有一個(gè)對(duì)象運(yùn)算符delete運(yùn)算符,它的作用是刪除一個(gè)對(duì)象的變量或者從數(shù)組變量中刪除數(shù)組單元,甚至可以刪除整個(gè)數(shù)組。例如:deletemonth[2];//刪除數(shù)組的第三個(gè)元素對(duì)象操作語句1、forin語句可以用來來處理數(shù)組,forin語句還可以用來循環(huán)處理對(duì)象的所有屬性。對(duì)于每一個(gè)屬性,循環(huán)體內(nèi)的語句被執(zhí)行一遍。forin語句處理對(duì)象的基本格式是:在這樣的循環(huán)中,每一個(gè)循環(huán)給予循環(huán)變量的值是由Javascript解釋器內(nèi)部決定的,不能人為地指定循環(huán)的順序,因此也不必要知道對(duì)象中屬性的個(gè)數(shù)就可以使用form語句對(duì)對(duì)象進(jìn)行操作,使用起來十分方便。例子<HTML><HEAD><TITLE>編寫Javascript腳本</TITLE><scriptLanguage="javascript">document.write("<H4>document對(duì)象屬性如下:<H4>")for(variindocument){document.write(i+"<br>")}</script></HEAD></HTML>2.With語句
with語句提供了一種簡(jiǎn)單而清晰的方法來表示對(duì)象與它的屬性和方法之間的關(guān)系。如果在程序中要使用某個(gè)對(duì)象的多個(gè)屬性和方法,就可以將這個(gè)對(duì)象用W訕語句包含起來,這樣在代碼塊中就可以直接使用它的方法和屬性。下面是with語句的格式為:例子<HTML><HEAD><TITLE>編寫Javascript腳本</TITLE><scriptLanguage="javascript">with(Math){document.write("<H3>"+"sin(30)="+sin(30)+"<H3>"+"<P>");document.write("cos(30)="+cos(30)+"<P>");document.write("tan(30)="+tan(30));}</script></HEAD></HTML>Array對(duì)象Array對(duì)象是Javascript提供的一個(gè)實(shí)現(xiàn)數(shù)組特性的常用的內(nèi)置對(duì)象。
Array對(duì)象有兩個(gè)屬性,一個(gè)是length屬性,用于返回?cái)?shù)組中最大下標(biāo)加1的數(shù)字。
Array對(duì)象的另一個(gè)屬性是prototype屬性,用于在Array對(duì)象中添加新的屬性和方法。有時(shí),當(dāng)一個(gè)對(duì)象的屬性或者方法不夠用時(shí),就可以用prototype屬性來添加新的屬性或方法。例1:<HTML><HEAD><TITLE>編寫Javascript腳本</TITLE></HEAD><BODY><scriptLanguage="javascript">vardata=newArray("one","two","three","four","five");document.write("data的初始內(nèi)容為:"+data+",");functionfun(){if(this.length!=0)document.write("此數(shù)組的長(zhǎng)度為"+this.length+"。"+"<BR>")elsedocument.write("此數(shù)組的長(zhǎng)度為0。"+"<BR>");}Atotype.fun=fun;data.fun();data=newArray();document.write("<P>"+"數(shù)組被清零后");data.fun();</script></BODY></HTML>通過這個(gè)例子,可以看到,要為Array對(duì)象添加新的方法,只要做到以下幾步就能實(shí)現(xiàn):
(1)首先定義好相關(guān)的函數(shù)。
(2)使用語句Atotype.函數(shù)名=函數(shù)名,就將方法添加到Array對(duì)象中了。注意,賦值號(hào)(=)右邊只是函數(shù)名,并沒有括號(hào)。String對(duì)象String對(duì)象是Javascript提供的字符串處理對(duì)象,它提供了對(duì)字符串進(jìn)行處理的屬性和方法。在使用String時(shí),首先要做的是為它創(chuàng)建一個(gè)字符串變量。由于Sirius對(duì)象與Javasmp腳本語言本身結(jié)合得十分緊密,因此,在創(chuàng)建一個(gè)字符串變量時(shí),可以使用new運(yùn)算符來創(chuàng)建,也可以直接將字符串賦給變量。例如:
newstring=“Thisisanewstring”與
newstring=newString(“Thisisanewstring”)等價(jià)。string對(duì)象的屬性和方法
String對(duì)象最常用的屬性是length屬性,通過調(diào)用String對(duì)象的length屬性可以獲得字符串中字符的個(gè)數(shù)(字符串長(zhǎng)度)。String對(duì)象的另一個(gè)屬性是pfototype屬性,可以用來為String對(duì)象增加新的屬性或方法。String對(duì)象的方法主要用于有關(guān)字符串在Web頁面中的顯示格式、字體大小、字體顏色、字符的搜索以及字符的大小寫轉(zhuǎn)換方面的功能。string對(duì)象的字符串處理方法根據(jù)參數(shù)傳入的正則表達(dá)式或者分隔符來分隔調(diào)用此方法的字符串string對(duì)象的字符串格式設(shè)置方法例子<HTML><HEAD><TITLE>編寫Javascript腳本</TITLE><scriptLanguage="javascript">varname=prompt("請(qǐng)輸入你的英文名字","請(qǐng)?jiān)谶@里輸入");document.write("你的英文名字是"+name.bold()+"<br>");
document.write("你的英文名字是"+name.toUpperCase()+"<br>");
document.write("你的英文名字是"+name.fontsize(6)+"<br>");
document.write("你的英文名字有"+name.length+"個(gè)字符"+"<br>");
document.write("你的英文名字的前4個(gè)字符是"+name.substring(0,4)+"<br>");
</script></HEAD></HTML>Date對(duì)象Date對(duì)象為用戶提供了獲取和設(shè)置日期和時(shí)間的屬性和方法,可以用來幫助網(wǎng)頁制作人員提取日期和時(shí)間的某一部分及定義日期和時(shí)間。Date對(duì)象沒有提供直接訪問的屬性,只有一個(gè)屬性prototype,用于在Date對(duì)象中添加新的屬性和方法,其使用方法與Array對(duì)象的prototype屬性的使用方法基本上是一樣的。Javascript為Date()提供了許多用于操作日期和時(shí)間的方法返回表示轉(zhuǎn)換成世界時(shí)間的星期中的某一天(0~6,0表示星期日,6表示星期一)例子:<HTML><HEAD><TITLE>編寫Javascript腳本</TITLE><scriptLanguage="javascript">today=newDate();year=today.getFullYear();month=today.getMonth()+1;day=today.getDate();theweek=today.getDay();switch(theweek){case0:week="星期日";break;case1:week="星期一";break;case2:week="星期二";break;case3:week="星期三";break;case4:week="星期四";break;case5:week="星期五";break;case6:week="星期六";break;}
document.write("<h3>"+"今天是"+year+"年"+month+"月"+day+"日"+week+"<h3>"+"<br>");document.write("<h2>"+"歡迎來訪"+"<h2>");</script></HEAD></HTML>getFullyear是對(duì)所有年份都返回一個(gè)4位數(shù),這樣所有年份都可以返回了,getyear方法則是對(duì)于1900-1999之間的年份返回兩位數(shù),而對(duì)于此范圍之外的年份則返回4位數(shù)。getMonth方法返回的月份是0-11。getDay方法返回一個(gè)介于D-6之間的數(shù),對(duì)應(yīng)于一個(gè)星期的7天,所以在腳本中使用了Switch語句來進(jìn)行選擇輸出星期幾。today=newDate(2001,4,25,10,30);一句中,將括號(hào)內(nèi)指定的日期和時(shí)間返回給例2:簡(jiǎn)易電子時(shí)鐘<HTML><HEAD><TITLE>編寫Javascript腳本</TITLE><scriptLanguage="javascript">functionshowTime(){now=newDate();hours=now.getHours();mins=now.getMinutes();secs=now.getSeconds();timeVal="";timeVal+=hours;timeVal+=((mins<10)?":0":":")+mins;timeVal+=((secs<10)?":0":":")+secs;timeVal+=((hours<12)?"AM":"PM");
document.clock.time.value=timeVal;timerID=setTimeout("showTime()",1000);}</script></HEAD><bodyonLoad="showTime()"><formname="clock">電子時(shí)鐘:<inputtype="text"name="time"size="20"value=""></form></body></HTML>Global對(duì)象在Javascript中除了可以自己定義函數(shù)外,還提供了一些內(nèi)置函數(shù),用于完成一些常用的功能。這些函數(shù)從屬于Global對(duì)象,它們是Global對(duì)象的方法。作為Javascript的內(nèi)置對(duì)象,Global對(duì)象包含了兩個(gè)屬性,一個(gè)是Infinity,用于表示正無窮大,另一個(gè)是NaN,表示非數(shù)。Global對(duì)象方法eval()方法在Global對(duì)象中,eval()方法是最常用的。eval()方法括號(hào)內(nèi)的x可以接收一個(gè)字符串形式的參數(shù)(表達(dá)式或者也可以是Javascript的命令),并且將它作為一個(gè)Javascript的源代碼來執(zhí)行,eval()將返回執(zhí)行表達(dá)式或Javascript命令后的結(jié)果。例如:eval(“document.write(‘我只是試一試’)”);相當(dāng)于document.write(‘我只是試一試’);例子:簡(jiǎn)單計(jì)算器例子<HTML><HEAD><TITLE>編寫Javascript腳本</TITLE><scriptLanguage="javascript">functioncompute(x){x.result.value=eval(x.expression.value);}</script></HEAD><body><h2>一個(gè)簡(jiǎn)單的計(jì)算器:<h2><formname="form1">請(qǐng)輸入表達(dá)式:<inputtype="text"name="expression"size="20"><br><inputtype="button"value="請(qǐng)單擊這里的計(jì)算表達(dá)式"onClick="compute(form1)"><br>表達(dá)式的計(jì)算結(jié)果是:<inputtype="text"name="result"size="20"></form></body></HTML>Number對(duì)象NUmer對(duì)象可以將數(shù)字作為對(duì)象直接進(jìn)行訪問。例:利用number對(duì)象返回?cái)?shù)值范圍<HTML><HEAD><TITLE>編寫Javascript腳本</TITLE><scriptLanguage="javascript">document.write("你可以使用的數(shù)的范圍如下:"+"<br>");document.write("最小值是"+Number.MIN_VALUE);document.write(",最大值是"+Number.MAX_VALUE+"<br>");document.write("注意可別超出范圍。");</script></HEAD></HTML>Boolean對(duì)象
Boolean對(duì)象可以將邏輯值作為對(duì)象進(jìn)行訪問。要使用Boolean對(duì)象,首先要使用new運(yùn)算符為它指定一個(gè)變量名,格式是:變量名=newBoolean(參數(shù))。括號(hào)里的參數(shù)可以是邏輯值trUe或false,也可以是其他類型的值。如果是NaN、null和0,則Javascript認(rèn)為它是false,其他的值認(rèn)為是trUe。Boolean對(duì)象有一個(gè)屬性ptototype,用于為Boolean對(duì)象添加新的屬性和方法。Boolean對(duì)象有兩個(gè)方法,toString()方法返回表示Boolean對(duì)象的邏輯值字符串(true和false)。valueOf()方法返回Boolean對(duì)象的原始值。<HTML><HEAD><TITLE>編寫Javascript腳本</TITLE><h3>Boolean對(duì)象的方法使用示例如下:</h3><scriptLanguage="javascript">b1=newBoolean(true);b2=newBoolean(false);b3=newBoolean(10);b4=newBoolean(null);document.write("b1=newBoolean(true),");document.write("b1.toString()="+b1.toString()+"<br>");document.write("b2=newBoolean(true),");document.write("b2.toString()="+b2.toString()+"<br>");document.write("b3=newBoolean(10),");document.write("b3.toString()="+b3.toString()+"<br>");document.write("b4=newBoolean(null),");document.write("b4.toString()="+b4.toString()+"<br>");</script></HEAD></HTML>使用Function對(duì)象
Function對(duì)象可以將函數(shù)作為對(duì)象來進(jìn)行訪問,并且可以在程序執(zhí)行的過程中動(dòng)態(tài)地生成函數(shù)并且調(diào)用函數(shù)。使用Funtion對(duì)象創(chuàng)建一個(gè)函數(shù)時(shí)要給出函數(shù)的參數(shù)以及函數(shù)體,其格式是:函數(shù)名=newFunction(”參數(shù)1”,”參數(shù)2”,”參數(shù)n”,”函數(shù)體”)。括號(hào)內(nèi)的參數(shù)1\參數(shù)n就是指的形式參數(shù)。調(diào)用該函數(shù)時(shí),需要在函數(shù)名后面加上一對(duì)小括號(hào)(),并且給出與形式參數(shù)對(duì)應(yīng)的實(shí)在參數(shù)。例如,newFun=newFunction(“x”,”y”,”returnx+y”);調(diào)用函數(shù)newFun,例如newFun(10,20),實(shí)在參數(shù)10和20分別被傳遞給對(duì)應(yīng)的形式參數(shù),然后參加函數(shù)體returnx+y的運(yùn)算,得到的結(jié)果為30。例子:簡(jiǎn)單的加法計(jì)算器<HTML><HEAD><TITLE>編寫Javascript腳本</TITLE><scriptLanguage="javascript">newfun=newFunction("x","y","z=x+y;returnz");x=prompt("請(qǐng)輸入x的值:","請(qǐng)?jiān)谶@里輸入");y=prompt("請(qǐng)輸入y的值:","請(qǐng)?jiān)谶@里輸入");x=Number(x);y=Number(y);alert(x+"+"+y+"="+newfun(x,y))</script></HEAD></HTML>其他對(duì)象Event對(duì)象將在介紹事件處理時(shí)再做介紹。Object對(duì)象可以用來派生其他對(duì)象,其屬性和方法也可以派生給其他對(duì)象。RegExp對(duì)象表示一個(gè)用來進(jìn)行模式匹配的正則表達(dá)式。Object對(duì)象和RegExp對(duì)象對(duì)于一般用戶來說使用難度較大,涉及到一些比較復(fù)雜的概念,因此在本課中我們不再做介紹,僅僅列出它們的常用屬性和方法供大家參考。Object對(duì)象屬性和方法RegExp對(duì)象和方法瀏覽器對(duì)象:document對(duì)象使用瀏覽器,用戶首先接觸到的是頁面文檔,因此document對(duì)象是Javascript實(shí)現(xiàn)網(wǎng)頁各種功能中最常用最基本的對(duì)象之一;它代表瀏覽器窗口中的文檔,可以用來處理文檔,訪問文檔中包含的BTML元素,如各種表單、圖像、超級(jí)鏈接等。與Javascript的內(nèi)置對(duì)象不一樣,它不是由Javascript提供的,而是由瀏覽器提供的,它可以在Javascript中使用,它使Javascript更緊密地與瀏覽器結(jié)合在一起,這種對(duì)象稱為瀏覽器對(duì)象。document對(duì)象的屬性、方潔使用document對(duì)象訪問和處理文檔<HTML><HEAD><TITLE>編寫Javascript腳本</TITLE><scriptLanguage="javascript">document.writeln("<pre><h3>在頁面上顯示信息并換行</h3><pre>");document.write("<h3>在頁面上顯示信息</h3>");</script></HEAD></HTML>例2:顯示頁面的一些元素信息<HTML><HEAD><TITLE>編寫Javascript腳本</TITLE><scriptLanguage="javascript">document.write("當(dāng)前文檔的標(biāo)題:"+document.title+"<br>");document.write("當(dāng)前文檔的URL:"+document.URL+"<br>");document.write("當(dāng)前文檔的背景色:"+document.bgcolor+"<br>");document.write("當(dāng)前文檔的最后修改日期:"+document.lastModified);</script></HEAD></HTML>例3:<HTML><HEAD><TITLE>編寫Javascript腳本</TITLE><scriptLanguage="javascript">functiondateinfo(){alert(Date())}</script></HEAD><bodylink="red"vlink="blue"><ahref=""">超級(jí)鏈接1</a><ahref=""">超級(jí)鏈接2</a><imgsrc="asd.jpg"height="100"width="120"><form><inputtype="button"value="請(qǐng)單擊這里顯示當(dāng)前日期和時(shí)間"onClick="dateinfo()"></form><script>document.write("當(dāng)前文檔包含"+document.links.length+"個(gè)超級(jí)鏈接"+"<br>");document.write("當(dāng)前文檔包含"+document.forms.length+"個(gè)表單"+"<br>");document.write("當(dāng)前文檔未被訪問的超級(jí)鏈接顏色是"+document.linkColor+"<br>");document.write("當(dāng)前文檔已被訪問的超級(jí)鏈接顏色是"+document.vlinkColor);</script></body></HTML>Javascript的事件模型document對(duì)象還可以處理一些事件,包括keydown、keyup、keypress、Click、Dbklick、MouseDown、MouseUp、Load、Unload等事件。關(guān)于事件,使用事件來處理函數(shù)使用戶與頁面的交互性能做得更漂亮。對(duì)應(yīng)于窗口、文檔、表單、超鏈接和圖像等對(duì)象也定義了多個(gè)事件。利用這些事件可以更好地使用對(duì)象編寫交互性更好的網(wǎng)頁。使用事件句柄事件句柄就是事件處理程序,其格式為:on事件名=事件處理函數(shù)(或javascript語句)在實(shí)際中進(jìn)行事件處理時(shí),需要將具體的事件與事件句柄結(jié)合起來,為HTML元素指定事件句柄,將“on事件名”稱為該事件的事件屬性,例如,onClick稱為Click事件的事件屬性,其等號(hào)后面的內(nèi)客就是事件的處理過程。事件處理過程可以用事件處理函數(shù)來表示,也可以直接使用javascript語句來表示。例1<html><HEAD><TITLE>編寫Javascript腳本</TITLE><scriptLanguage="javascript">functionstatusinfo(){window.status="這是最精彩的網(wǎng)站之一";}
</script></HEAD><body><ahref=""OnMouseOver="statusinfo()">請(qǐng)將鼠標(biāo)移到這里!</a>
</body></html>例2:統(tǒng)計(jì)單擊按鈕的次數(shù)<HTML><HEAD><TITLE>編寫Javascript腳本</TITLE><scriptLanguage="javascript">count=0;</script></HEAD><body><form><inputtype="button"onClick="count++;alert('你已經(jīng)單擊這里'+count+'次了!')"value="請(qǐng)單擊這里"></form></body></html>例3<HTML><HEAD><TITLE>編寫Javascript腳本</TITLE><scriptLanguage="javascript">count=0;functionnum(){count++;alert('你已經(jīng)單擊這里'+count+'次了!')}</script></HEAD><body><form><inputtype="button"onClick="num()"value="請(qǐng)單擊這里"></form></body></html>通過對(duì)象指定事件處理過程前面的所有例子都是在HTML標(biāo)記符中使用事件句柄,人們經(jīng)常習(xí)慣使用這種方法。還有一種方法是允許在HTML標(biāo)記符之外,將一個(gè)事件處理函數(shù)的調(diào)用賦給對(duì)象的事件屬性。例子<HTML><HEAD><TITLE>編寫Javascript腳本</TITLE></HEAD><body><formname=form1><inputtype="button"name=button1value="請(qǐng)單擊這里"></form><scriptLanguage="javascript">count=0;functionnum(){count++;alert('你已經(jīng)單擊這里'+count+'次了!')}
document.form1.button1.onclick=num;</script></body></html>在這個(gè)例子中通過<FORM>標(biāo)記符定義了頁面上的一個(gè)按鈕,按鈕的NAME屬性值為button1。在document.forml.button1.onclick=num一句中,onclick是按鈕button1的事件屬性,它的值為num。注意此處的函數(shù)名后面役有括號(hào)。函數(shù)num()是在第1個(gè)<SCRIPT>標(biāo)記塊中定義的。document.forml.button1.onclick=num是在第2個(gè)<SCRIPT>標(biāo)記塊中,而不是在HTML標(biāo)記塊中使用的。從這個(gè)例子中知道,如果要通過對(duì)象指定事件處理過程,必須做到以下兩步:如果事件處理過程是事件處理函數(shù),則要在<SCRIPT>標(biāo)記塊中定義該函數(shù),這個(gè)<sCRIPT>標(biāo)記塊最好放在<HEAD>標(biāo)記塊間,使頁面裝載時(shí)一起被裝載進(jìn)來。通過特定對(duì)象指定事件處理過程的代碼也是放在叱<sCRIPT>塊中的。注意:此時(shí)如果事件處理過程是時(shí)間處理函數(shù),則只是將函數(shù)名賦給特定的對(duì)象的事件屬性,后面不加括號(hào)。Event對(duì)象簡(jiǎn)介Event對(duì)象是一種只與事件處理過程有關(guān)的特殊的對(duì)象,它屬于Javascript的內(nèi)置對(duì)象,可以通過一些屬性來描述一個(gè)Javascipt事件。Event對(duì)象能夠接收到有關(guān)事件以及事件發(fā)生時(shí)瀏覽器和頁面的狀態(tài)信息。當(dāng)頁面上發(fā)生一個(gè)事件時(shí),該對(duì)象可以作為參數(shù)傳遞到事件的句柄上。例如,當(dāng)鼠標(biāo)單擊頁面時(shí),Event對(duì)象就包括了事件類型鼠標(biāo)單擊)、鼠標(biāo)在事件發(fā)生時(shí)的坐標(biāo)位置等信息。Event對(duì)象對(duì)于IE和Netscape具有不同的屬性,我們僅介紹和IE有關(guān)的屬性Event對(duì)象的屬性例子1<HTML><HEAD><TITLE>編寫Javascript腳本</TITLE><scriptLanguage="javascript">functionclk(){name=event.type;alert("產(chǎn)生事件對(duì)象的事件是"+name+"事件。");}</script></HEAD><bodyonLoad="clk()"><form><inputtype="button"onClick="clk()"value="請(qǐng)單擊這里"></form></body></html>例子2<HTML><HEAD><TITLE>編寫Javascript腳本</TITLE><scriptLanguage="javascript">functionposition(){x=event.x;y=event.y;window.status="當(dāng)前鼠標(biāo)坐標(biāo)是X="+x+"Y="+y;}</script></HEAD><bodyonMouseMove="position()"></body></html>例3:不允許使用快捷菜單<HTML><HEAD><TITLE>編寫Javascript腳本</TITLE><scriptLanguage="javascript">functionnomenu(){alert("對(duì)不起,本網(wǎng)頁不能使用快捷菜單!");event.returenValue=false;}</script></HEAD><bodyonContextmenu="nomenu()"></body></html>(1)Contextmenu事件是當(dāng)用戶鼠標(biāo)右擊企圖打開快捷菜單時(shí)被觸發(fā)的事件,當(dāng)該事件發(fā)生時(shí),就調(diào)用函數(shù)———nomenu()通過使用Even對(duì)象的returnnValue屬性,并將該屬性的值設(shè)置成false來取梢Contextmenu事件,使該事件不再發(fā)生。Javascript的常用事伴用戶在與頁面交互時(shí),通過鼠標(biāo)、鍵盤或者其他一些動(dòng)作會(huì)產(chǎn)生很多事件。在Javascript中可以充分使用事件來使頁面更精彩。Click事件與Dbclick事件Click事件:當(dāng)一個(gè)頁面的一個(gè)位置、按鈕、復(fù)選框或者一個(gè)超級(jí)鏈接被用戶單擊時(shí),就會(huì)產(chǎn)生一個(gè)Click事件。Dbclick事件:當(dāng)用戶用鼠標(biāo)雙擊一個(gè)超級(jí)鏈接或其他頁面元素時(shí)就會(huì)產(chǎn)生一個(gè)Dbclick事件。Dbclick事件只在IE4.0以上版本和較高版本的NetcapeNevigator中存在。在IE4.0中,Dbclick事件的第1次被單擊會(huì)觸發(fā)Click事件。Click事件案例<HTML><HEAD><TITLE>編寫Javascript腳本</TITLE><scriptLanguage="javascript">functionshowdate(){today=newDate();hour=today.getHours();minute=today.getMinutes();second=today.getSeconds();alert("現(xiàn)在是"+hour+"點(diǎn)"+minute+"分"+second+"秒“)}</script></HEAD><body><form><inputtype="button"value="按下這里顯示時(shí)間"onclick="showdate()"></form></body></html>MouseDown事件與MouseUp事件MouseDown事件:當(dāng)用戶按下鼠標(biāo)上的一個(gè)鍵時(shí)就會(huì)產(chǎn)生一個(gè)MouseDown事件。MouseUp事件:當(dāng)用戶釋放鼠標(biāo)上的一個(gè)鍵時(shí)就會(huì)產(chǎn)生一個(gè)MouseUp事件。這兩個(gè)事件是伴隨著Click事件發(fā)生的,它們的組合就構(gòu)成了Click事件,這無論是用在按鈕、頁面任意位置,還是某個(gè)超級(jí)鏈接上都是一樣的。但是,如果用戶只是在超級(jí)鏈接上按下鼠標(biāo)不放,并將鼠標(biāo)移到超級(jí)鏈接之外再釋放鼠標(biāo),這時(shí)鏈接上只有MouseDown事件發(fā)生,而有MouseUp事件發(fā)生。Mouseup和Mousedown事件<HTML><HEAD><TITLE>編寫Javascript腳本</TITLE><scriptLanguage="javascript">functionpulldown(){mytext.style.fontSize="50pt";mytext.style.fontStyle="italic"mytext.style.weight="bold"}functionfreeup(){mytext.style.fontSize="20pt";mytext.style.fontStyle="normal"mytext.style.weight="normal"}</script></HEAD><body><form><pid=mytextonMouseDown="pulldown()"onMouseUp="freeup()">歡迎訪問我們的網(wǎng)站!
</form></body></html>Mouseover、Mouseout和MouseMove事件Mouseover事件:當(dāng)用戶將鼠標(biāo)移過(移到或離開)一個(gè)超級(jí)鏈接或者其他頁面元素時(shí)就會(huì)產(chǎn)生一個(gè)Mouseover事件。
Mouseout事件:Mouseout事件總是伴隨Mouseover事件。因?yàn)楫?dāng)用戶將鼠標(biāo)移開并脫離一個(gè)超級(jí)鏈接或者其他頁面元素時(shí)就會(huì)發(fā)生Mouseout事件。MouseMove:當(dāng)用戶移動(dòng)鼠標(biāo)時(shí)就會(huì)產(chǎn)生MouseMove事件。Mouseover事件<HTML><HEAD><TITLE>編寫Javascript腳本</TITLE><scriptLanguage="javascript">functionoutinfo(){alert("真可惜,你不打開它!")}</script></HEAD><body><ahref=""onMouseOut="outinfo()">請(qǐng)將鼠標(biāo)移到這里!</a></body></html>KeyDown事件、KeyPress事件和KeyUp事件
KeyDown事件:當(dāng)用戶按下鍵盤上的一個(gè)鍵并且不放時(shí)就產(chǎn)生了KeyDown事件。
KeyUp事件:當(dāng)用戶松開鍵盤上的一個(gè)鍵時(shí)就產(chǎn)生了KeyUp事件。
KeyPress事件:KeyPress事件是KeyDOwn事件和KeyUp事件的組合。在鍵盤上按下一個(gè)鍵時(shí)或松手時(shí)就產(chǎn)生了KeyPress事件。例子<html><head><title>編寫Javascript腳本</title><scriptLanguage="javascript">functiondown(){window.status="按住了別松手,松手會(huì)彈出警示框!"}functionup(){alert("按不住了?");}</script></head><bodyonKeyDown="down()"onKeyUp="up()"></body></html>Load事件與UnLoad事件
Load事件:Load事件一般是在瀏覽器提取頁面之后,在<BODY>標(biāo)記塊的內(nèi)容顯示出來之前發(fā)生。
Load事件也可以在<framset>標(biāo)記中或者與Load事件相關(guān)的頁面元素中調(diào)用。例如,加載圖像時(shí)調(diào)用。Unload事件:當(dāng)瀏覽器卸載一個(gè)文檔時(shí)就發(fā)生了Unload事件。<html><head><title>編寫Javascript腳本</title><scriptLanguage="javascript">functionmessage(){alert("加載圖像成功!")}</script></head><body><IMGSRC="asd.jpg"height="100"width="140"onLoad="message()"></body></html>Focus事件與Bur事件當(dāng)用戶使用鼠標(biāo)或者鍵盤選中一個(gè)頁面元素,如一個(gè)文本框,使得用戶可以在其中進(jìn)行輸入時(shí)就產(chǎn)生了一個(gè)Focus事件,則稱這個(gè)元素獲得了焦點(diǎn)。當(dāng)一個(gè)元素獲得焦點(diǎn)時(shí),其他元素也就失去了焦點(diǎn)。對(duì)于窗口或者框架(幀)來說,當(dāng)一個(gè)窗口或者框架(幀)激活時(shí),稱為得到焦點(diǎn),如果被釋放,則稱為失去焦點(diǎn)。當(dāng)頁面元素、窗口或框架(幀)失去焦點(diǎn)時(shí),就會(huì)產(chǎn)生Blur事件。<html><head><title>編寫Javascript腳本</title><scriptLanguage="javascript">functionbefore(){alert("包括學(xué)歷背景和工作經(jīng)歷");}functionafter(){alert("我已經(jīng)輸入完了");}</script></head><body><P>請(qǐng)?jiān)诳蚶镙斎肽愕膫€(gè)人簡(jiǎn)歷:</P><textarearows="4"columns="15"onFocus="before()"onBlur="after()"></textarea><P><inputtype=submitvalue="發(fā)送"><inputtype=resetvalue="重設(shè)"></body></html>Submit事件與Reset事件Submit事件:當(dāng)用戶單擊表單中的一個(gè)提交按鈕,準(zhǔn)備向服務(wù)器提交信息時(shí)就會(huì)發(fā)生Submit事件。Submit事件只能從<FORM>標(biāo)記塊內(nèi)獲得,它也是伴隨著Click事件的。當(dāng)用戶單擊提交按鈕時(shí)就會(huì)產(chǎn)生Click事件,當(dāng)Click事件處理完后,Subndt事件才會(huì)被觸發(fā)。Reset事件:當(dāng)一個(gè)表單被重置時(shí)就會(huì)產(chǎn)生一個(gè)Reset事件事件。當(dāng)用戶對(duì)于輸入的內(nèi)容不滿意時(shí),就要進(jìn)行表單重置,也就是將以前輸入的內(nèi)容全部清除。<html><head><title>編寫Javascript腳本</title><scriptLanguage="javascript">functioncheckdata(){inputdata=document.form1.text1.value;if(0<inputdata&&inputdata<100)return(true);else{alert("你輸入的數(shù)值"+inputdata+"超出范圍了!");return(false);}}</script></head>
<body><center><formname="form1"method="post"onSubmit="checkdata()"><P>請(qǐng)輸入100以內(nèi)的正整數(shù):
<inputtype="text"name="text1"value="1"size="5"></p><br><inputtype="submit"value="提交輸入的數(shù)字"></center></body></html>Change事件與Select事件
Change事件:當(dāng)一個(gè)頁面元素如文本框、多行文本框失去鼠標(biāo)或鍵盤的焦點(diǎn),或者值被改變時(shí)就會(huì)產(chǎn)生Change事件。Select事件:當(dāng)用戶選擇了文本框或多行文本框內(nèi)的一個(gè)文本時(shí)就會(huì)產(chǎn)生Select事件。它與單選按鈕、復(fù)選框或者選擇列表沒有關(guān)系,只是針對(duì)文本的。<html><head><title>編寫Javascript腳本</title><scriptLanguage="javascript">functioninfo(){alert("我已經(jīng)選擇好關(guān)鍵字了!");}</script></head><body><P>請(qǐng)?jiān)诳蚶镙斎肽愕膫€(gè)人簡(jiǎn)歷:</p><textarearows="4"columns="15"onSelect="info()"></textarea><br><inputtype="submit"value="提交輸入的數(shù)字"></body></html>Move事件、DragDrop事件和Resize事件
Reaize事件:當(dāng)用戶調(diào)整窗口或框架(幀)大小時(shí),就會(huì)產(chǎn)生一個(gè)Resize事件。Move事件:當(dāng)用戶移動(dòng)窗口或框架(幀)就會(huì)產(chǎn)生Move事件。DragDrop事件:當(dāng)用戶將一個(gè)對(duì)象如URL拖放到窗口或者框架(幀),就會(huì)產(chǎn)生DragDrop事件。<html><head><title>編寫Javascript腳本</title><scriptLanguage="javascript">functioninfo(){alert("窗口大小被改變了!");}</script></head><bodyonResize="info()"></body></html>Error事件與Abort事件Error事件:當(dāng)窗口、框架(幀)、圖像或者文檔在加載過程中發(fā)生錯(cuò)誤時(shí),就會(huì)產(chǎn)生一個(gè)Error事件。用戶可以使用Error事件來處理裝載或運(yùn)行時(shí)的錯(cuò)誤。
Abort事件:當(dāng)用戶單擊瀏覽器上的STOP按鈕或者選擇了一個(gè)新的超級(jí)鏈接使圖像被中斷裝載時(shí),就會(huì)產(chǎn)生一個(gè)Abort事件。<html><head><title>編寫Javascript腳本</title><scriptLanguage="javascript">functionimgerror(){alert("窗口加載失?。?);}</script></head><body><imgsrc=“no.jpg"height="100"width="140"onError="imgerror()"></body></html>window對(duì)象和frame對(duì)象文檔對(duì)象模型在使用瀏覽器的時(shí)候看到頁面上有各種各樣的內(nèi)客(元素),例如,窗口的標(biāo)題、頁面的顏色、各種按鈕、圖像等,網(wǎng)頁與瀏覽器是密不可分的,那么能訪問與瀏覽器本身的配置和屬性有關(guān)的內(nèi)容嗎?Javascript提供了一種與網(wǎng)頁關(guān)系密切的對(duì)象,可以幫助你完成這個(gè)工作。支持Javascript的瀏覽器,如IE和Netscape,在裝入web頁面時(shí)會(huì)根據(jù)頁面的內(nèi)客為Javascript創(chuàng)建出多個(gè)與相應(yīng)網(wǎng)頁相對(duì)應(yīng)的對(duì)象,這樣就形成了一部分瀏覽器對(duì)象。在Javascript中可以通過這些對(duì)象來訪問頁面上所感興趣的元素,從而獲得一定的操作效果,例如,在每章中都用到的document對(duì)象就是一個(gè)十分常用的瀏覽器對(duì)象。各種瀏覽器對(duì)象形成了一種層次模型,將它稱為文檔對(duì)象模型(DocumentobjectModel,簡(jiǎn)稱DOM),如圖在文檔對(duì)象模型中,下層對(duì)象與上層對(duì)象之間是一種從屬的關(guān)系,即下層對(duì)象從屬于上層對(duì)象,例如,窗口包含了文檔,文檔又可以包含表單、圖像和超級(jí)鏈接等。在Javascript中,一個(gè)對(duì)象的上層的對(duì)象可以稱為這個(gè)對(duì)象的父對(duì)象,而它則可以稱為是其上一層對(duì)象的子對(duì)象。這些對(duì)象也提供了多種屬性和方法來供網(wǎng)頁編程人員使用,而且因?yàn)橛脩艚?jīng)常會(huì)通過各種動(dòng)作來與網(wǎng)頁打交道,所以還提供了一些事件處理。如何引用冽覽器對(duì)象對(duì)應(yīng)于文檔對(duì)象模型中的層次關(guān)系,Javascript對(duì)瀏覽器對(duì)象的引用是簡(jiǎn)單地一層一層地引用的。例如,在引用document對(duì)象時(shí),應(yīng)該使用window.document;在引用用screen對(duì)象時(shí),應(yīng)該使用window.screen;在引用forms對(duì)象時(shí),應(yīng)該使用window.document.forms,在引用text對(duì)象時(shí),則應(yīng)該使用window.document.forms.text。在文檔對(duì)象模型中,有些對(duì)象屬于數(shù)組型對(duì)象,如document對(duì)象下一層的imasgs、links、forms等對(duì)象,這種對(duì)象代表一個(gè)頁面文檔中的若干個(gè)圖像、超級(jí)鏈接和表單。在引用這種數(shù)組型的對(duì)象時(shí),可以使用對(duì)象在數(shù)組中的位置(下標(biāo))來引用,如window.document.forms[0],表示引用文檔中的第1個(gè)表單。還可以通過對(duì)象的name屬性來訪問,例如,如果該表單的name屬性為form1,則可以用window.document.form1來引用。window對(duì)象作為文檔對(duì)象模型中最頂層的對(duì)象,Javascript認(rèn)為它是默認(rèn)的,因此在引用它的下層對(duì)象時(shí),可以不寫出window。例如,在本書中經(jīng)常用到document對(duì)象的write()方法時(shí),使用的是document.write()如果要使用表單form1,就可以寫成document.forml。同樣在使用window對(duì)象的屬性和方法時(shí),也可以不寫window,而直接引用。經(jīng)常用到的alert()實(shí)際上就是window.alert()使用window對(duì)象window對(duì)象也就是窗口對(duì)象,它處于文檔對(duì)象模型的層次的最頂層。WindoW對(duì)象是Web瀏覽器所有內(nèi)客的客器,所以它的地位是十分特殊而重要的。只要一打開瀏覽器窗口,即使役有在窗口中加載任何文檔內(nèi)客,瀏覽器也會(huì)在內(nèi)存中創(chuàng)建一個(gè)window對(duì)象。window對(duì)象代表著當(dāng)前的瀏覽器窗口,因?yàn)樗奶厥馕恢?,它是所有其他瀏覽器對(duì)象的父對(duì)象。每個(gè)打開的瀏覽器窗口都對(duì)應(yīng)Javascript腳本程序中的一個(gè)window對(duì)象。除了窗口中的頁面內(nèi)容之外,一個(gè)窗口還包含其他特性,例如,窗口的尺寸以及所有的窗口中所包含的其他各種“元素”內(nèi)滾動(dòng)條、工具欄、菜單欄以及狀態(tài)欄等),對(duì)于這些“元素”,WindoW對(duì)象提供了若干的屬性和方法來幫助使用者對(duì)這些“元素”實(shí)施一定的控制。還可以利用window對(duì)象方便地在刎覽器上創(chuàng)建一個(gè)附加的窗口,這個(gè)窗口可以按照使用者所需要的尺寸及其他的一些“元素”來創(chuàng)建。window對(duì)象包含的屬性、方潔window對(duì)象和其他對(duì)象一樣也提供了許多屬性和方法,利用這些屬性、方法,再配合一些相應(yīng)的事件處理就可以實(shí)現(xiàn)對(duì)刎覽器窗口的許多功能,開發(fā)出既美觀,交互性又好的頁面。window方法window方法使用window對(duì)象window對(duì)象的屬性與方法的引用,最通常的做法就是采用一般對(duì)象的屬性與方法的引用方法,即Window.屬性和window.方法例如:W和window.closedWindow.stop()和window.close()一個(gè)window對(duì)象還可以使用標(biāo)識(shí)符self代替window引用當(dāng)前窗口的屬性和方法,self代表當(dāng)前刎覽器窗口。引用形式為:self.屬性和self.方法還有一種引用window對(duì)象的屬性和方法的方法在前面已經(jīng)說明了,就是在Javasedpt中可以不寫標(biāo)識(shí)符window或Self而是直接寫出當(dāng)前窗口的屬性和方法。<html><head><title>編寫Javascript腳本</title><scriptLanguage="javascript">window.alert("使用標(biāo)記符window引用window對(duì)象的方法");self.alert("使用標(biāo)記符self引用window對(duì)象的方法");alert("不加標(biāo)記符,直接引用window對(duì)象的方法");</script></head></html>打開或關(guān)閉一個(gè)窗口當(dāng)瀏覽器打開一個(gè)URL或文件時(shí)就創(chuàng)建了一個(gè)窗口,這個(gè)窗口稱為主窗口,相應(yīng)的頁面就是裝載在主窗口中的。通常主窗口被打開后,就一直開著,而當(dāng)瀏覽器打開一個(gè)新的URL或文件時(shí),只是更換了主窗口中的內(nèi)容,而不是重新打開了一個(gè)新的窗口。那么如果需要在主窗口下再打開一個(gè)新的窗口,應(yīng)該怎么做呢?這可以在瀏覽器中選擇相應(yīng)的創(chuàng)建新窗口的菜單項(xiàng)來完成,也可以在Javascript中利用window對(duì)象的open()方法來完成。對(duì)于IE和NetscapeNavigator這兩種測(cè)覽器來說,在瀏覽器中選擇相應(yīng)的菜單項(xiàng)來創(chuàng)建新窗口的方法不太一樣。IE使用Newwindows菜單項(xiàng),而NetscapeNavigator則使用File菜單項(xiàng)中的WebBrowser來完成。打開窗口在Javascript中可以使用window對(duì)象的open()方法和close()方法來打開或關(guān)閉一個(gè)窗口。open()方法的格式如下:open(URL,windowname[,windowfeatures])可以看到,在open()括號(hào)內(nèi)有3個(gè)參數(shù):兩個(gè)必選參數(shù)URL和windowname以及一個(gè)可選參數(shù)(windowfeatures)這3個(gè)參數(shù)的含義是:URL是所要裝入到新窗口的文檔的URL;windowname是所打開的新窗口的名稱;window.features是新窗口的實(shí)際的特性(窗口的外觀)。在了解了open()方法的格式和有關(guān)參數(shù)后,就可以創(chuàng)建自己所希望的窗口了。例如,下面的這一句就是創(chuàng)建并打開一個(gè)新窗口mywindow:<html><head><scriptlanguage="javascript">window.open("new.html","mywindow","menubar=no,height=200,width=300");</script></head></html>關(guān)閉窗口當(dāng)要關(guān)閉一個(gè)打開的新窗口時(shí),使用Window對(duì)象的close(),即window.close()或者self.close(),就可以關(guān)閉這個(gè)窗口。下面來看一個(gè)簡(jiǎn)單的例子,通過它進(jìn)一步說明如何使用window對(duì)象來創(chuàng)建窗口和關(guān)閉窗口。<html><head><title>編寫javascript腳本</title><scriptlanguage="javascript">functioncreatwindow(){window.open("new.html","mywindow","menubar=no,height=200,width=300");}functionclosewindow(){window.close()}</script></head><body><form><inputtype="button"value="創(chuàng)建新窗口"onClick="creatwindow()"><inputtype="button"value="關(guān)閉窗口"onClick="closewindow()"></form></body>進(jìn)行定時(shí)設(shè)置在頁面上有時(shí)會(huì)有一些元素,它們需要在一定時(shí)間內(nèi)存在,超出一定時(shí)間后就應(yīng)該消失了。例如,動(dòng)畫效果,它需要一個(gè)圖像在一定時(shí)間內(nèi)處在一個(gè)位置上,超出時(shí)間就應(yīng)該不在這個(gè)位置上,而是換到其他的位置上。再例如,在網(wǎng)頁上經(jīng)??吹降挠洉r(shí)器、倒記時(shí)器等,window對(duì)象提供的定時(shí)方法就可以幫助我們來實(shí)現(xiàn)這種功能。window對(duì)象的定時(shí)方法包括setTimeout(),clearTimeout()以及setInterval()和clearlnterval(),它們提供的定時(shí)機(jī)制允許在一定的時(shí)間之內(nèi)自動(dòng)地完成一定的功能。這種機(jī)制在編程應(yīng)用上十分有用。例如,在實(shí)現(xiàn)動(dòng)畫效果時(shí)就可以采用這些定時(shí)方法。setTimeout()和clearTimeout()setTimeout()方法的格式如下:variable=setTimeout(expression,time)Variable是一個(gè)變量,setTimeout()將返回一個(gè)表示時(shí)間的值給它,這個(gè)值可以供clearTimeout()方法使用。因此Variable也可以稱為定時(shí)器變量。
eXptession可以是一個(gè)一般表達(dá)式或函數(shù),
time是以毫秒為單位的時(shí)間。setTimeout()方法的作用是在time所規(guī)定的時(shí)間之后執(zhí)行expression一次。例如,timer=setTimeout(showmessage(),1000)clearTimeout(timer)<html><head><title>編寫javascript腳本</title><scriptlanguage="javascript">functionstartload(){mytimer=window.setTimeout("alert('時(shí)間很晚了,該離開了')",5000);}functionstop(){window.clearTimeout(mytimer);con=confirm("真的想結(jié)束瀏覽嗎?");if(con==true)window.close();}</script></head><bodyonLoad="startload()"><form><center><h3>請(qǐng)?jiān)?秒鐘以內(nèi)單擊一下按鈕以結(jié)束你的瀏覽:</h3><inputtype="button"value="請(qǐng)?jiān)?秒內(nèi)決定是否單擊此按鈕"onClick="stop()"></center></form></body></html>setlnterval()方法和clearlnterval()方法setlnterval()方法的格式如下:variable=setInterval(expression,time,[args])在setlnterval()括號(hào)內(nèi)有3個(gè)參數(shù):兩個(gè)必選參數(shù)和一個(gè)可選參數(shù)。參數(shù)expression,[args]是可選項(xiàng),它表示如果expression代表的函數(shù)有參數(shù),則用tw,吧么,mp來表示。setlnterval方法也是返回一個(gè)表示時(shí)間的值給變量variable。但是setlnterval每隔time所規(guī)定的時(shí)間就會(huì)自動(dòng)執(zhí)行expression一次,因而是重復(fù)執(zhí)行的。這個(gè)方法設(shè)定的定時(shí)操作可以被clearlnterval()方法取消。<html><head><title>編寫javascript腳本</title><scriptlanguage="javascript">functionstartload(){mytimer=window.setInterval("alert('時(shí)間很晚了,該離開了')",5000);}functionstop(){window.clearInterval(mytimer);con=confirm("真的想結(jié)束瀏覽嗎?");if(con==true)window.close();}</script></head><bodyonLoad="startload()"><form><center><h3>請(qǐng)?jiān)?秒鐘以內(nèi)單擊一下按鈕以結(jié)束你的瀏覽:</h
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年廣東省安全員C證(專職安全員)考試題庫
- 2025天津市安全員《C證》考試題庫及答案
- 【初中數(shù)學(xué)課件】親自調(diào)查作決策課件
- 機(jī)器人課件-機(jī)器人語言和離線編程
- 幼兒園教師禮儀-課件
- 戶外景觀用材生產(chǎn)線設(shè)備更新技改項(xiàng)目可行性研究報(bào)告模板-立項(xiàng)備案
- 三只小豬蓋房子幻燈片
- 《小學(xué)美術(shù)京劇臉譜》課件
- 單位管理制度展示大全人力資源管理篇
- 《護(hù)理知識(shí)競(jìng)賽活動(dòng)》課件
- 《輸液港的護(hù)理》課件
- 新修訂反洗錢法律知識(shí)培訓(xùn)課件
- 精彩的儲(chǔ)運(yùn)部年終總結(jié)
- Python開發(fā)工程師招聘筆試題及解答(某大型國企)
- 妊娠期高血糖診治指南
- 2024壓鑄機(jī)安全技術(shù)規(guī)范
- 綿陽小升初數(shù)學(xué)試題-(綿中英才學(xué)校)
- 數(shù)據(jù)中心數(shù)據(jù)中心建設(shè)項(xiàng)目電氣工程設(shè)計(jì)方案
- 廣東省深圳市2022年中考英語真題(含答案)
- 四川省瀘州市(2024年-2025年小學(xué)四年級(jí)語文)統(tǒng)編版期末考試(上學(xué)期)試卷及答案
- 4 地表流水的力量 (教學(xué)設(shè)計(jì))-2023-2024學(xué)年 六年級(jí)下冊(cè)科學(xué)人教版
評(píng)論
0/150
提交評(píng)論