JavaScript項目式實例教程(張屹峰第2版)課件全套 項目1-9 對話框和頁面輸出 初步體驗-運動基礎 滑動的側邊欄_第1頁
JavaScript項目式實例教程(張屹峰第2版)課件全套 項目1-9 對話框和頁面輸出 初步體驗-運動基礎 滑動的側邊欄_第2頁
JavaScript項目式實例教程(張屹峰第2版)課件全套 項目1-9 對話框和頁面輸出 初步體驗-運動基礎 滑動的側邊欄_第3頁
JavaScript項目式實例教程(張屹峰第2版)課件全套 項目1-9 對話框和頁面輸出 初步體驗-運動基礎 滑動的側邊欄_第4頁
JavaScript項目式實例教程(張屹峰第2版)課件全套 項目1-9 對話框和頁面輸出 初步體驗-運動基礎 滑動的側邊欄_第5頁
已閱讀5頁,還剩345頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

項目一對話框和頁面輸出——初步體驗有兩張網頁,每張網頁上都有一個”問候”按鈕。在第一張網頁上點擊該按鈕,彈出對話框“張三向您問好!”,點擊對話框上的“確定”按鈕后,緊接著在該網頁上打印“張三歡迎您光臨本站!”。在第二張網頁上做同樣的操作,顯示結果相同,只不過信息中把“張三”顯示為了“李四”。項目要求代碼的復用性和可維護性良好。項目情境熟悉JavaScript腳本內嵌在HTML中的書寫方法熟悉JavaScript腳本的執(zhí)行時機。初步了解事件觸發(fā)的概念。初步了解函數和函數調用的方法。熟悉JavaScript腳本文件的編寫和引入的方法。學習目標打開頁面,立即彈出一個問候對話框。任務1彈出對話框1、在HTML中,任何標簽都可以看成是一個對象,例如body就是一個對象。這些對象一般都有屬性、事件和方法。其相關內容將在后面的章節(jié)闡述。2、如果要想在頁面被引導后執(zhí)行一個任務,可以給<body>標簽添加一個onload事件(關于事件將在后續(xù)章節(jié)詳細介紹),此事件在body對象被加載完成后被觸發(fā),寫法形如:onload="要執(zhí)行的代碼";3、alert("參數")功能是彈出一個對話框,對話框中的內容就是該函數中設置的參數。4、JavaScript對大小寫是敏感的,所以alert()必須全部小寫?!鞠嚓P知識】在<body>標簽內部輸入以下代碼:<bodyonload="alert('你好!')">【任務實現(xiàn)】在網頁上打印一串歡迎詞。任務2在頁面上打印歡迎詞1、document表示的是文檔對象,每個載入瀏覽器的HTML文檔都會成為Document對象。(關于該對象在后續(xù)章節(jié)會詳細介紹)2、document對象有很多方法,write方法是其中之一,表示在文檔中打印信息內容?!鞠嚓P知識】在<body>標簽內部輸入以下代碼:<bodyonload="document.write('歡迎光臨本站!')">【任務實現(xiàn)】先彈出問候對話框再在頁面上打印歡迎詞任務3先彈對話框再打印

在JavaScript中,如果功能塊有多個語句,這些語句中間用分號隔開。實際上,每一個完整的功能語句結束處都應該寫上分號,哪怕只有一條語句,也應該寫上?!鞠嚓P知識】在<body>標簽內部輸入以下代碼:<bodyonload="alert('你好!');document.write('歡迎光臨本站');">【任務實現(xiàn)】頁面上有一個按鈕,點擊此按鈕后,彈出問候對話框,在頁面上打印歡迎詞。任務4點擊按鈕執(zhí)行任務3document.write()執(zhí)行時,將重寫當前頁面。所以,頁面上原有的內容將全部消失,只留下document.write()寫下的內容。在本任務中,頁面中最后看不到原來的“問候”按鈕就是這個原因。【相關知識】在<body>標簽對中編寫按鈕代碼,并在按鈕代碼中添加onclick事件屬性,并編寫執(zhí)行任務代碼:<inputtype="button"name="button"id="button"value="問候"onclick="alert('你好!');document.write('歡迎光臨本站!');"/>【任務實現(xiàn)】仍然實現(xiàn)任務4的需求,但是要求把任務執(zhí)行代碼模塊化,以便隨時調用。任務5任務模塊化1、代碼模塊化。

將代碼“打包”為函數的形式2、Javascript與HTML混編

<script></script>標簽的使用3、注釋

//……....注釋單行

/*…….*/注釋多行【相關知識】1、在<body>標簽對中編寫按鈕代碼:<inputtype="button"name="button"id="button"value="問候"onclick="hello()"/>站!');"/>2、在頁面的<head></head>標簽內部編寫代碼:<scripttype="text/javascript">//下面定義了一個函數hellofunctionhello(){ alert('你好!'); document.write('歡迎光臨本站!');}</script>【任務實現(xiàn)】仍然完成任務5的需求,但是要求增加代碼的靈活性。例如改變對話框和頁面打印的信息,但是不需要修改函數模塊代碼。任務6調用靈活化在任務4中,我們將代碼“打包”為一個函數,實現(xiàn)了模塊化,但是還不夠靈活。例如要改變顯示的內容,就必須要修改函數體中的代碼。又例如,如果再增加一個按鈕,點擊這個按鈕也需要調用函數hello(),但是要顯示的內容又有不同,則無法實現(xiàn),只能另外編寫一個函數供其調用。這樣的程序缺乏了可擴展性,代碼的復用性也比較差。程序設計中常常通過在編寫函數模塊時定義參數(一般是用逗號隔開的變量列表),而在調用函數時傳入具體的數值的方法實現(xiàn)函數功能的靈活性和可擴展性。有關變量的概念以及函數參數的具體內容將在后面章節(jié)闡述?!鞠嚓P知識】1、在<body>標簽對中編寫按鈕代碼:<inputtype="button"name="button"id="button"value="問候"onclick="hello('你好','歡迎光臨本站!');"/>2、在頁面的<head></head>標簽內部編寫代碼:<scripttype="text/javascript">functionhello(str1,str2){alert(str1);document.write(str2);}</script>【任務實現(xiàn)】任務7“項目一”的實現(xiàn)1、js文件擴展名為js的文件是用JavaScript編寫的客戶端腳本文件,它不是一般的網頁文件,一般不能直接運行打開,而是配合網頁來使用。它常常用來實現(xiàn)某些功能,這些功能代碼可以被多個不同的網頁調用。在js文件中編寫JavaScript腳本時,不要用<script>標簽對包括。2、引用js文件在頁面中,只有引入js文件才能使用該文件中的JavaScript代碼。方法是在<script>標簽中添加src屬性,其值就是該js文件的路徑?!鞠嚓P知識】1、建立一個文件hello.js(注意擴展名為js)。2、在hello.js中編寫如下函數代碼并保存文件。functionhello(str1,str2){ alert(str1); document.write(str2);}3、建立兩個頁面,分別為hello1.html和hello2.html(為簡單起見,將這三個文件放置在同一個目錄下)。4、在hello1.html中,在<body>標簽對內部編寫按鈕代碼如下:<inputtype="button"name="button"id="button"value="問候"onclick="hello('張三向您問好','張三歡迎您光臨本站!');“/>5、在頁面的<head></head>標簽內部編寫代碼如下:<scripttype="text/javascript"src="hello.js"></script>6、在hello2.html中做同樣的操作,只是將“張三”改為“李四”【任務實現(xiàn)】項目二簡單計算器——判斷結構設計一個簡單的計算器,能進行加、減、乘、除四則運算。當用戶運行網頁時,依次彈出三個輸入對話框,分別要求輸入兩個數和一個運算符號(+、-、×、÷)。輸入無誤時,在頁面上打印計算算式。在進行除法運算時,除數不能為0,否則打印錯誤信息。如果輸入數字格式錯誤或者輸入的運算符號錯誤都提示相應的不能運算信息。項目情境熟悉變量和常量的概念和使用方法。熟悉基本數據類型的概念熟悉數據類型的轉換。熟悉關系運算符、邏輯運算符、算術運算符的使用方法。熟悉判斷結構的使用方法。熟悉幾個內置函數的使用方法。學習目標打開頁面,打印程序中指定的姓名和性別。任務1認識變量和字符串1、變量的定義定義一個變量用關鍵字var,例如:varx;vary;一個var也可以同時定義多個變量,這些變量間用逗號隔開,例如:varx,y,z;【相關知識】2、變量的賦值變量的賦值就是把值存儲在變量所在的內存單元中,方法是用“=”運算符。賦值可以是在定義變量時,例如:varx=0;vary=1,z=2;也可以是在變量定義后使用時才賦值,例如:varx;x=0;【相關知識】3、變量的命名變量的名稱必須是由ASCII字符或者下劃線(_)開頭,第一個字符不能是數字,但其后可以是數字或者其他字母。例如如下變量的命名是合法的:aA_aa_1注意:JavaScript語言對大小寫是敏感的,所以變量a和變量A是兩個不同的變量。變量名不能定義為JavaScript的保留字。例如不能定義一個變量的名稱為var或者function?!鞠嚓P知識】4、變量的類型【相關知識】數據類型具體類型基本數據類型字符串型、數字型、布爾型復合數據類型對象、數組其他數據類型函數、null(空)、undefined(未定義)5、常量與變量對應的是常量。常量用來表示一個固定不變的值。比如下面這些這些都是常量:12325.78"張三"true【相關知識】6、字符串型6.1、字符串的定義字符串必須用雙引號或者單引號包括起來。6.2、轉義符轉義符“\”6.3、連接運算符連接運算符”+”【相關知識】在<head>標簽內部輸入以下代碼:<scripttype="text/javascript">varname="張三"; varsex="男"; document.write("姓名:"+name+"<br/>性別:"+sex); </script>【任務實現(xiàn)】打開頁面,彈出一個輸入對話框,要求輸入姓名。輸入確定后再次彈出輸入對話框,要求輸入性別。輸入確定后,在頁面打印剛剛輸入的信息。任務2輸入對話框1、Window對象window對象表示瀏覽器窗口。任何一個全局函數或變量都是windowd對象的屬性,所以使用時,該對象常常省略不寫?!鞠嚓P知識】2、prompt方法prompt方法的功能是彈出一個輸入對話框,格式是:prompt(<提示信息>[,默認值])其返回的值就是用戶在對話框中輸入的值,返回值的類型是字符串型?!鞠嚓P知識】在<head>標簽內部輸入以下代碼:<scripttype="text/javascript">varname=mpt("請輸入您的姓名:",""); varsex=mpt("請輸入您的性別:","男"); document.write("姓名:"+name+"<br/>性別:"+sex);</script>【任務實現(xiàn)】打開頁面,彈出一個輸入對話框,要求輸入一個整數。如果輸入的不是一個整數,則給出錯誤提示。任務3判斷是否為整數1、表達式表達式可以是常量或者變量,也可以是由常量、變量和運算符號組成的語句。比如下面這些都是合法的表達式:4.56truea>ba+b。【相關知識】2、布爾數據類型布爾(boolean)是一種基本數據類型,表示真或者假,通俗的理解為是或者非,對或者錯等。它常常用于判斷一個結果的是非性。它的值只有兩個:true(真)和false(假)。例如:8>4其結果就是false。再如:a<6如果a是一個比6小的值,則結果就是true,如果a是一個比6大或者等于6,結果就是false。【相關知識】3、關系運算符【相關知識】運

符名

稱舉

例==等于a==b!=不等于a!=b===全等于a===b!==不全等于a!==b>

大于a>b<

小于a<b>=大于或等于a>=b<=小于或等于a<=b4、判斷語句4.1、if語句①if語句if(<條件>)[語句塊]②if...else語句if(<條件>) [語句塊1]else [語句塊2]【相關知識】③if...elseif...else語句if(<條件1>) [語句塊1]elseif(條件2) [語句塊2]……elseif(<條件n>) [語句塊n]else [語句塊n+1]【相關知識】④if語句的嵌套if語句允許嵌套,嵌套時注意if與else的匹配,不要出現(xiàn)交叉嵌套的現(xiàn)象?!鞠嚓P知識】4.2、switch語句switch(<變量或表達式>){ case<數值1>:

[語句塊1] <break;> case<數值2>:

[語句塊2] <break;> …… case<數值n>:

[語句塊n] <break;> [default:] [語句塊n+1]}【相關知識】5、三目運算三目運算是根據條件執(zhí)行兩個語句中的其中一個,格式如下:布爾表達式?語句1:語句2當“布爾表達式”值為真時,執(zhí)行“語句1”;當“布爾表達式”值為假時,執(zhí)行“語句2”?!鞠嚓P知識】在<head>標簽內部輸入以下代碼:<scripttype="text/javascript">varnum=mpt("請輸一個整數:","");if(parseInt(num)==num) { document.write(num+"是整數");}else{ document.write(num+"不是整數");}</script>【任務實現(xiàn)】打開頁面,

彈出一個輸入對話框,要求輸入一個整數。如果輸入的為奇數,確認后打印信息,提示該數為奇數。如果輸入的為偶數,確認后打印信息,提示該數為偶數。如果輸入的信息為以下情況中的一種,就視為不合法輸入,提示錯誤。①輸入的不是數字。

輸入的是數字,但不是整數。③未做任何輸入。任務4判斷奇偶數1、邏輯運算符【相關知識】運算符名稱舉例備注&&邏輯與true&&false(結果為false)9>8&&7>8(結果為false)二元運算符。只有兩個操作數的值都為true,結果才是true。||邏輯或true||false(結果為false)9>8||7>8(結果為false)二元運算符。操作數中只要有一個值為true,結果就是true。只有兩個操作數的值都為false,結果才是false。!邏輯非!true(結果為false)!9>8(結果為false)一元運算符。true的非是false,false的非是true。2、算術運算符【相關知識】運算符名稱舉例備注+加a+b二元運算符。加法運算,運算結果為數字型。-減a-b二元運算符。減法運算,運算結果為數字型。*乘a*b二元運算符。乘法運算,運算結果為數字型。/除a/b二元運算符。除法運算,運算結果為數字型。%模a%b二元運算符。取余數運算,運算結果為數字型。++遞增a++++a一元運算符。相當于加1。要求操作數必須是變量。運算結果為數字型。--遞減a—--a一元運算符。相當于減1。要求操作數必須是變量。運算結果為數字型。3、運算符的優(yōu)先級【相關知識】優(yōu)先級(從高到低)運

符順

序1小括號()2一元運算符++--!3算術運算符先*/%,后+-4關系運算符>>=<<=5關系運算符==!====!==6邏輯運算符先&&,后||7賦值運算符=4、isNaN函數【相關知識】isNaN()函數接收一個參數,用于檢查這個參數是否“不是數值”。isNaN()函數在接收到一個值之后,會嘗試將這個值轉換為數值,如果能成功轉換,則返回false,否則返回true。該函數的基本語法是isNaN(value),其中value就是要被檢查的值。需要注意的是,當value為空格(或者由空格組成的字符串)、null值時,該函數返回的值也是false,原因是isNaN()函數將這些值轉換為了數字0。在<head>標簽輸入下列代碼:<scripttype="text/javascript">varnum=mpt("請輸一個整數:",0);if(!isNaN(num)&&num!=""&&parseInt(num)==num){ varres=num%2;if(res==0) { document.write(num+"是偶數"); } else { document.write(num+"是奇數"); }}else{ document.write("輸入的數字格式不對,不能判斷奇偶數");}</script>【任務實現(xiàn)】打開頁面,彈出輸入對話框,要求輸入一個被加數。輸入確定后,再次彈出輸入對話框,要求輸入一個加數。輸入確定后,打印這兩個數的和。如果這兩個數中只要有一個輸入格式不正確,或者未輸入任何值,都給出錯誤信息。任務5加法運算器1、數字型【相關知識】表現(xiàn)形式舉例涵義整數198、234072、0650xAF9、0x56E十進制八進制(0開頭)十六進制(0x開頭)浮點數1.0、3.489有小數點科學計數法2.45E72.45×107特殊數字InfinityNaN無限大不是一個數字2、數據類型的轉換2.1、隱式類型轉換【相關知識】數據類型在數字環(huán)境下轉換在字符串環(huán)境下轉換在布爾環(huán)境下轉換數字類型無(1)轉換為內容為數字的字符串(2)NaN轉換為"NaN"(1)非0轉換為true,0轉換為false(2)NaN轉換為false字符串類型(1)空字符串轉換為0(2)非空字符串轉換為數字(當字符串中的內容為數字時)或NaN(當字符串中的內容不是數字時)無(1)空字符串轉換為false(2)非空字符串轉換為true布爾類型(1)true轉換為1(2)false轉換為0(1)true轉換為"true"(2)false轉換為"false"無2.2、顯示類型轉換【相關知識】函數功能舉例結果Number(字符串)將字符串整體轉換為數字。Number("4.56")Number("1.23.56")4.56NaNparseInt(字符串)將字符串中第一個非數字字符前的字符轉換為整型數字。parseInt("12abc")parseInt("abc12")parseInt("1.8")12NaN1parseFloat(字符串)將字符串中第一個非數字字符前的字符轉換為浮點型數字。parseFloat("1.2abc")parseFloat("abc1.2")parseFloat("1.2e3abc")1.2NaN12003、查看數據類型【相關知識】可以使用typeof運算符查看一個數據的數據類型。typeof運算符有以下兩種使用方式:typeof(表達式)typeof變量名在<head>標簽對中輸入如下代碼:<scripttype="text/javascript">varnum1=mpt("請輸入被加數:",0);varnum2=mpt("請輸入加數:",0);if(parseFloat(num1)==num1&&parseFloat(num2)==num2) { varres=parseFloat(num1)+parseFloat(num2); document.write(num1+"+"+num2+"="+res);}else{ document.write("輸入的數字格式不正確!");}</script>【任務實現(xiàn)】任務6“項目二”的實現(xiàn)在<head>標簽對中輸入以下代碼:<scripttype="text/javascript">varnum1=mpt("請輸入第一個數:",0);varnum2=mpt("請輸入第二個數:",0);varop=mpt("請輸入一個運算符號(+、-、×、÷):","+");if(parseFloat(num1)==num1&&parseFloat(num2)==num2){ varn1=parseFloat(num1); varn2=parseFloat(num2); varflag=0; varres=0; switch(op) { case"+": res=n1+n2; break; case"-": res=n1-n2; break;【任務實現(xiàn)】 case"×": res=n1*n2; break; case"÷": if(n2!=0) //如果除數為0 { res=n1/n2; } else { flag=1; res="除數不能為0!"; } break; default: //如果輸入的運算符不是+、-、×、÷中的任何一個 flag=1; res="輸入的運算符號錯誤!不能計算!";

}【任務實現(xiàn)】

if(flag==0) { document.write(n1+op+n2+"="+res); } else { document.write(res); }}else{ document.write("輸入數字格式錯誤!不能計算!");}</script>【任務實現(xiàn)】項目三統(tǒng)計成績單——循環(huán)結構設計一個程序,要求能不斷彈出輸入成績對話框。在輸入成績時,檢測輸入數據的合法性,如果輸入的不是數字或輸入內容為空,給出錯誤信息,繼續(xù)彈出成績對話框輸入成績,只到用戶輸入一個截止符號"!"為止。最后在頁面上打印所有輸入的有效成績,打印的格式為每行4個。統(tǒng)計所有成績的平均分、最高分、最低分并打印輸出。最后輸出一個鏈接“是否有不及格”。用戶點擊該鏈接,如果成績中有不及格的,則彈出對話框提示沒有不及格成績。若有不及格成績,則彈出對話框提示有不及格成績。項目情境初步了解數組的概念和使用方法。初步了解對象的概念。熟悉Math數學對象的應用。熟悉循環(huán)結構的使用方法。熟悉變量的作用域學習目標分別計算并打印輸出1+2+3+...+100和1×2

×3×...×100的值。任務1累加和累乘1、循環(huán)結構1.1、while語句while(<邏輯表達式>)<語句塊>1.2、do...while語句do<語句塊>while(<邏輯表達式>);2、死循環(huán)【相關知識】在<head>標簽內部輸入以下代碼:<scripttype="text/javascript">varsum=0; //總和sumvarf=1; //總乘積fvari=1; //計數iwhile(i<=100) { sum=sum+i; f=f*i; i++; } document.write("1+2+3+...+100="+sum+"<br/>1×2×3×...×100="+f);</script>【任務實現(xiàn)】隨機的給出10個0到100之間(包含0和100)的整數,統(tǒng)計這10個數中的最大值和最小值。任務2最大和最小值1、數組1.1、數組的概念數組是一些數據元素(element)的集合,每個數據元素在數組中都有一個編號,通過編號可以引用這些數據元素。這些數據元素可以是不同的數據類型,例如數字型、字符串型、布爾型等,設置還可以是一個數組。每個數組都有一個名稱,其命名規(guī)則和變量的命名規(guī)則相同?!鞠嚓P知識】1.2、數組的定義1.2.1、使用構造函數方式有三種,分別是:newArray()newArray(<數組元素的個數>)newArray(<數組元素1的值>[,數組元素2的值]...)1.2.2、直接定義方式有兩種,一種是用一對空的中括號定義一個空數組,然后再為數組元素賦值。另一種方式是在一對中括號中,放入數組元素值,并用逗號隔開?!鞠嚓P知識】2、for語句for(初始化變量;邏輯表達式;改變變量表達式)<語句塊>3、for...in語句for(變量in對象或者數組)<語句塊>4、循環(huán)的嵌套無論哪種循環(huán)結構,都可以相互之間使用嵌套,這與判斷結構的嵌套類似?!鞠嚓P知識】5、對象5.1、對象的概念對象有三要素:屬性、方法和事件。5.2、使用屬性和方法引用或修改對象的屬性:對象.對象的屬性對象[對象的屬性]//其中,“對象的屬性”要使用雙引號或單引號括起來調用對象的方法:對象.對象的方法名([參數列表])【相關知識】5.3、Math對象【相關知識】屬性描述E返回算術常量e,即自然對數的底數(約等于2.718)。LN2返回2的自然對數(約等于0.693)。LN10返回10的自然對數(約等于2.302)。LOG2E返回以2為底的e的對數(約等于1.414)。LOG10E返回以10為底的e的對數(約等于0.434)。PI返回圓周率(約等于3.14159)。SQRT1_2返回返回2的平方根的倒數(約等于0.707)。SQRT2返回2的平方根(約等于1.414)?!鞠嚓P知識】方法描述abs(x)返回數的絕對值。acos(x)返回數的反余弦值。asin(x)返回數的反正弦值。atan(x)以介于-PI/2與PI/2弧度之間的數值來返回x的反正切值。atan2(y,x)返回從x軸到點(x,y)的角度(介于-PI/2與PI/2弧度之間)。ceil(x)對數進行上舍入。cos(x)返回數的余弦。exp(x)返回e的指數。floor(x)對數進行下舍入。log(x)返回數的自然對數(底為e)。max(x,y)返回x和y中的最高值。min(x,y)返回x和y中的最低值。pow(x,y)返回x的y次冪。random()返回0~1之間的隨機數。round(x)把數四舍五入為最接近的整數。sin(x)返回數的正弦。sqrt(x)返回數的平方根。tan(x)返回角的正切。toSource()返回該對象的源代碼。valueOf()返回Math對象的原始值。在<head>標簽對中輸入以下代碼:<scripttype="text/javascript">varele=[];for(vari=0;i<10;i++){ ele[i]=Math.round(Math.random()*100); document.write(ele[i]+"");}vare_max=ele[1];vare_min=ele[1];for(vari=0;i<10;i++){ if(ele[i]>e_max) { e_max=ele[i]; } if(ele[i]<e_min) { e_min=ele[i]; }}document.write("<br/>最大值:"+e_max+"<br/>最小值:"+e_min);</script>【任務實現(xiàn)】有一個字符串"Iamastudent",用循環(huán)語句查找第一個字母"t"在字符串中的位置。任務3循環(huán)的跳轉1、字符串對象1.1、創(chuàng)建字符串對象使用構造函數String()創(chuàng)建字符串對象,方式是:newString(str)或者String(str)其中str參數是字符串變量或者具體的字符串的值?!鞠嚓P知識】1.2、屬性和方法【相關知識】屬性描述constructor對創(chuàng)建該對象的函數的引用length字符串的長度prototype允許您向對象添加屬性和方法【相關知識】方法描述charAt()返回在指定位置的字符。charCodeAt()返回在指定的位置的字符的Unicode編碼。concat()連接字符串。indexOf()檢索字符串。lastIndexOf()從后向前搜索字符串。localeCompare()用本地特定的順序來比較兩個字符串。match()找到一個或多個正則表達式的匹配。replace()替換與正則表達式匹配的子串。search()檢索與正則表達式相匹配的值。slice()提取字符串的片斷,并在新的字符串中返回被提取的部分。split()把字符串分割為字符串數組。strike()使用刪除線來顯示字符串。substr()從起始索引號提取字符串中指定數目的字符。substring()提取字符串中兩個指定的索引號之間的字符。toLocaleLowerCase()把字符串轉換為小寫。toLocaleUpperCase()把字符串轉換為大寫。toLowerCase()把字符串轉換為小寫。toUpperCase()把字符串轉換為大寫。toSource()代表對象的源代碼。toString()返回字符串。valueOf()返回某個字符串對象的原始值。2、循環(huán)的跳轉2.1、break語句在循環(huán)中,它的作用是結束循環(huán)的執(zhí)行。即使循環(huán)的次數還沒有執(zhí)行完,也不再執(zhí)行。2.2、continue語句continue語句只能用于循環(huán)中,是結束當前正在執(zhí)行的這次循環(huán),跳入下一次循環(huán)。【相關知識】在<head>標簽內部輸入以下代碼:<scripttype="text/javascript">varstr="Iamastudent";varstr_len=str.length;variPos=0;for(vari=0;i<str_len;i++){if(str.charAt(i)=="t"){iPos=i+1;break;}}document.write("字符串"+str+"中的第一個字母t的位置為"+iPos);【任務實現(xiàn)】任務4“項目三”的實現(xiàn)1、函數1.1、自定義函數function函數名稱([參數列表]){ [語句塊][return<返回值>]}【相關知識】1.2、函數參數函數名稱([參數值列表]);對于形參和實參還需要注意以下幾點:①形參與實參要一一對應,也就是傳遞的順序要一致。②形參的個數與實參的個數原則上要求一致。如果形參的個數大于實參的個數,則多余的形參的值將被賦予undefined(表示未定義),如果形參的個數小于實參的個數,則多余的實參將被舍棄。③用于定義形參的變量不能添加關鍵字var,直接寫變量名即可。④形參只能是變量,不能是一個表達式?!鞠嚓P知識】1.3、系統(tǒng)函數也叫內置函數,是JavaScript內部定義好的函數,能完成一些特定的功能,用戶不必知道它是如何實現(xiàn)的,只要直接調用就可以了。前面我們已經學習的例如數學函數、parseInt()、parseFloat()、isNaN()等都是系統(tǒng)函數?!鞠嚓P知識】2、變量的作用域變量的作用域就是變量的有效作用范圍。這個范圍有兩種:全局和局部。在函數定義之外聲明的變量是全局變量,該變量在整個持續(xù)范圍內都可以訪問和修改。在函數定義內聲明的變量是局部變量,它不能被該函數外的任何事物訪問。但是,必須注意的是,在函數內部聲明一個局部變量時一定要使用關鍵字var,否則還是一個全局變量。一個局部變量的名稱可以與某個全局變量的名稱相同,但這是完全不同和獨立的兩個變量?!鞠嚓P知識】1、要不斷彈出成績輸入對話框,沒有規(guī)定輸入次數,所以要使用while循環(huán)。2、當輸入“!”就結束輸入,所以while循環(huán)的開始條件是輸入字符串不等于“!”。3、要對成績進行打印和統(tǒng)計,每輸入一個成績就先存儲到數組中?!救蝿辗治觥?、在<body>標簽對中編寫超級鏈接“是否有不及格”的代碼,并為其添加onclick事件,在事件中調用一個自定義函數check()。此函數的功能是查找是否有不及格的成績:<ahref="#"onclick="check()">是否有不及格</a>【任務實現(xiàn)】2、在<head>標簽對中輸入以下代碼:<scripttype="text/javascript">varscore=0;//存放當前輸入的成績vari=1;//輸入次數計數varele=[];//存放最終的成績while(score!="!"){ score=prompt("請輸入第"+i+"個成績:",0); if(!isNaN(score)&&score!=""&&score!="!") { ele[i]=Number(score); i++; } elseif(score!="!") { alert("輸入的成績無效!"); }}document.write("輸入的成績列表:<br/>");【任務實現(xiàn)】for(vari=1;i<ele.length;i++){ document.write(ele[i]+""); if(i%4==0) { document.write("<br/>"); }}vare_max=ele[1];//存儲最高分vare_min=ele[1];//存儲最低分varsum=0;//存儲分數總和,以便統(tǒng)計平均分for(vari=1;i<ele.length;i++){ sum+=ele[i]; if(ele[i]>e_max) { e_max=ele[i]; } if(ele[i]<e_min) { e_min=ele[i]; }}【任務實現(xiàn)】vareverage=Math.round(sum/(ele.length-1)*10)/10;document.write("<br/>平均分數:"+everage+"<br/>最高分:"+e_max+"<br/>最低分:"+e_min);functioncheck(){ varflag=0;//標志,flag=0時無不及格,flag=1時有不及格

for(vari=1;i<ele.length;i++) { if(ele[i]<60) { flag=1; break; } } if(flag==0) { alert("沒有不及格成績。"); } else { alert("有不及格成績。"); }}</script>【任務實現(xiàn)】項目四注冊頁面設計——事件設計一個簡單的用戶注冊頁面。頁面需求如下:填寫的信息有姓名、年齡、和城市,且都是必填信息,“城市”文本框只讀。當鼠標移入“姓名”或者“年齡”文本框時,光標自動落入文本框內。當鼠標移入“城市”文本框時,文本框中顯示文字“請選擇城市”。“年齡”文本框中只能輸入數字,當焦點落在此文本框中時,按非數字鍵無法鍵入。點擊“請選擇城市”下列列表框,可以選擇一個城市。當選擇了一個城市后,在“城市”文本框中顯示該城市。如果沒有填寫姓名,點擊“提交”按鈕提交表單時,會彈出提示框“姓名未填寫,不能提交!”。如果沒有填寫“年齡”,點擊“提交”按鈕提交表單時,會彈出提示框“年齡未填寫,不能提交!”。如果沒有選擇城市,點擊“提交”按鈕提交表單時,則彈出提示框“城市未選擇,不能提交!”。項目情境理解事件的概念。掌握事件的觸發(fā)機制。掌握常用事件的應用。學習目標點擊頁面上的“問候”按鈕,彈出兩個對話框,分別顯示“你好!”和“早上好”。要求不得將事件以及觸發(fā)代碼寫在“問候”按鈕的標簽中,做到代碼與標簽分離。任務1在代碼中設置對象處理事件1、為對象事件賦值屬性的設置方式:對象.屬性=屬性的值;為事件設置要觸發(fā)的行為動作:對象.事件=函數名稱;或者對象.事件=function(){

[函數體];}【相關知識】2、瀏覽器與事件事件都是由瀏覽器產生的,而不是由javascript產生的。因此不同的瀏覽器產生的事件可能不同,就是相同的瀏覽器不同的版本所產生的事件也有可能不同。因此,對于某個事件在某個瀏覽器上能正常運行,但在另一個瀏覽器上就無效。3、加載和卸載事件加載事件為onload,是指加載(打開)頁面完畢時產生的事件,卸載事件為onunload,是指卸載(關閉、刷新或者跳轉到其他頁面)網頁時產生的事件。另外在卸載頁面前還會觸發(fā)onbeforeunload事件?!鞠嚓P知識】4、預加載對象處理事件window.onload=function(){

對象.事件=函數名稱;}或者window.onload=function(){

對象.事件=function(){ [函數體];}}【相關知識】在<body>標簽內部輸入以下代碼:<inputtype="button"name="bt1"id="bt1"value="問候"/><scripttype="text/javascript">functionhello(){ alert('你好!'); alert('早上好!');}bt1.onclick=hello;</script>【任務實現(xiàn)】頁面上顯示一個“跳轉到百度”的超級鏈接,點擊該鏈接彈出一個詢問是否跳轉的對話框,如圖4.4所示。如果點擊“確定”按鈕,瀏覽器打開百度首頁,如果點擊“取消”按鈕,瀏覽器不跳轉,仍舊停止本頁。任務2事件處理中的返回值取消事件處理的默認動作【相關知識】元素事件描述<a>onclick單擊跳轉到元素的href屬性指定的URL<form>onsubmit、onreset提交表單、重置表單documentoncontextmenu單擊鼠標右鍵可以顯示一個快捷菜單1、在頁面中制作一個超級鏈接,標簽id為link。代碼如下:<aid="link"href="">跳轉到百度</a>【任務實現(xiàn)】2、在<head>標簽對中輸入如下JavaScript代碼:<scripttype="text/javascript">window.onload=function(){ link.onclick=function() { varsel=confirm("真的要跳轉嗎?") if(!sel) { returnfalse; } }}</script>【任務實現(xiàn)】頁面上有一個表單,內部有一個文本框,一個“提交”按鈕。用戶必須在文本框中輸入姓名,點擊“提交”按鈕,表單才能提交跳轉到ok.html,否則表單不提交。任務3表單提交事件對象層次模型【相關知識】1、在頁面上設計表單界面,HTML代碼如下:<formname="form1"method="post"action="ok.html">

姓名:<inputtype="text"name="txtName"id="txtname"><inputtype="submit"name="button"id="button"value="提交"></form>【任務實現(xiàn)】2、在<head>標簽對中輸入以下代碼:<scripttype="text/javascript">window.onload=function(){ form1.onsubmit=function() { if(form1.txtName.value=="") { alert("請?zhí)顚懶彰?); returnfalse; } }}</script>【任務實現(xiàn)】頁面上有一張小狗的圖片,當鼠標放置到該圖片上時,變成另一張小狗的圖片;當鼠標移開時,圖片恢復成原來小狗圖片;當在圖片上單擊鼠標左鍵時,彈出對話框,提示信息“汪汪”。任務4鼠標事件鼠標事件【相關知識】事件類型事件描述鼠標移動onmousemove當鼠標在對象上移動時觸發(fā)onmouseout當鼠標離開對象時觸發(fā)onmouseover當鼠標移入到對象上時觸發(fā)鼠標點擊onclick當單擊鼠標左鍵時觸發(fā)ondblclick當雙擊鼠標左鍵時觸發(fā)onmousedown當鼠標鍵按下的瞬間觸發(fā)onmouseup當鼠標鍵按下然后又釋放的瞬間觸發(fā)1、在頁面上放置第一張小狗,HTML代碼如下:<body><imgid="dog1"src="images/dog1.jpg"></body>【任務實現(xiàn)】2、在<head>標簽對中輸入以下代碼:<scripttype="text/javascript">window.onload=function(){ dog1.onmouseover=function() { dog1.src="images/dog2.jpg"; } dog1.onmouseout=function() { dog1.src="images/dog1.jpg"; } dog1.onmousedown=function() { alert("汪汪!"); }}</script>【任務實現(xiàn)】頁面上有兩個文本框,在第一個文本框中每輸入一個字符,第二個文本框中就顯示該字符對應在鍵盤上的鍵碼值。第一個文本框中只能輸入5個字符。任務5鍵盤事件1、鍵盤事件【相關知識】事

件描

述onkeydown當按下鍵盤上的鍵時觸發(fā)(能識別功能鍵,不區(qū)分大小寫按鍵)onkeyup當松開鍵盤上的鍵時觸發(fā)(能識別功能鍵,不區(qū)分大小寫按鍵)onkeypress當按下鍵盤上的鍵時觸發(fā)(不能識別功能鍵,區(qū)分大小寫按鍵)2、event事件對象event(事件)對象代表事件狀態(tài),如事件發(fā)生的元素,鍵盤狀態(tài),鼠標狀態(tài),鼠標位置和鼠標按鈕的狀態(tài)。【相關知識】2.1event對象兼容性處理IE瀏覽器有event對象,但是FF火狐瀏覽器沒有event對象,在該瀏覽器中,可以通過給函數的參數傳遞event對象。可以使用以下方法:function函數名(ev){varoEvent=ev||event;//使用oEvent代替window.event}或者對象=function(ev){varoEvent=ev||event;//使用oEvent代替window.event}【相關知識】2.2event對象屬性【相關知識】屬性描述

altKey設置或獲取Alt鍵的狀態(tài)。

altLeft設置或獲取左Alt鍵的狀態(tài)。

Button設置或獲取用戶所按的鼠標按鈕。

clientX設置或獲取鼠標指針位置相對于窗口客戶區(qū)域的x坐標,其中客戶區(qū)域不包括窗口自身的控件和滾動條。

clientY設置或獲取鼠標指針位置相對于窗口客戶區(qū)域的y坐標,其中客戶區(qū)域不包括窗口自身的控件和滾動條。

ctrlKey設置或獲取Ctrl鍵的狀態(tài)。

ctrlLeft設置或獲取左Ctrl鍵的狀態(tài)。

fromElement設置或獲取事件發(fā)生時激活或鼠標將要離開的對象。

keyCode設置或獲取與導致事件的按鍵關聯(lián)的Unicode按鍵代碼。

offsetX設置或獲取鼠標指針位置相對于觸發(fā)事件的對象的x坐標。

offsetY設置或獲取鼠標指針位置相對于觸發(fā)事件的對象的y坐標。

propertyName設置或獲取對象上發(fā)生更改的屬性名稱。

(接上表)【相關知識】repeat獲取onkeydown事件是否正在重復。

returnValue設置或獲取事件的返回值。

screenX設置或獲取獲取鼠標指針位置相對于用戶屏幕的x坐標。

screenY設置或獲取鼠標指針位置相對于用戶屏幕的y坐標。

shiftKey設置或獲取Shift鍵的狀態(tài)。

shiftLeft設置或獲取左Shift鍵的狀態(tài)。

srcElement設置或獲取觸發(fā)事件的對象。

toElement設置或獲取用戶要將鼠標指針移動指向的對象的引用。

type從event對象中獲取事件名稱。

wheelDelta設置或獲取滾輪按鈕滾動的距離和方向。

x設置或獲取鼠標指針位置相對于父文檔的x像素坐標。

y設置或獲取鼠標指針位置相對于父文檔的y像素坐標。2.3event.button的值及其含義【相關知識】值描

述0按下鼠標左鍵1按下鼠標中間鍵(滾輪)2按下鼠標右鍵1、在頁面上設置兩個文本框,HTML代碼如下:<body>字符:<inputtype="text"id="text1">鍵碼:<inputtype="text"id="text2"></body>【任務實現(xiàn)】2、在<head>標簽對中輸入以下代碼:<scripttype="text/javascript">window.onload=function(){ text1.onkeydown=function(ev) { varoEvent=ev||event; text2.value=oEvent.keyCode; if(this.value.length>=5) { returnfalse; } }}</script>【任務實現(xiàn)】頁面中有一個文本框,要求輸入正確格式的電子郵件地址,如果電子郵件地址格式不正確,則給出錯誤提示信息,表單不能提交。任務6用正則表達式驗證電子郵件地址格式1、正則表達式正則表達式又稱規(guī)則表達式(RegularExpression),是一種文本模式,包括普通字符(如a~z之間的字母)和特殊字符(也叫元字符或限定符)。正則表達式使用單個字符串來描述、匹配一系列匹配某個句法規(guī)則的字符串,通常被用來檢索、替換那些符合某個模式(規(guī)則)的文本。正則表達式不是JavaScript語言特有的,它是獨立于語言之外的一種文本模式。許多程序設計語言(如PHP、Python、C#、Java等語言)都支持利用正則表達式進行字符串操作。【相關知識】2、RegExp對象RegExp對象表示正則表達式,是由普通字符和特殊字符(也叫元字符或限定符)組成的文字模板,用于對字符串執(zhí)行模式匹配。創(chuàng)建RegExp對象的方式:(1)使用字面量創(chuàng)建RegExp對象的語法格式如下:var變量=/正則表達式/匹配模式;(2)使用構造函數創(chuàng)建RegExp對象的語法格式如下:var變量=newRegExp("正則表達式","匹配模式");【相關知識】3、RegExp對象的常用方法【相關知識】方

法描

述exec()檢索字符串中指定的值,返回找到的值,并確定其位置test()檢索字符串中指定的值,返回true或false4、支持正則表達式的String對象的方法【相關知識】方

法描

述search()在字符串中檢索指定的子字符串,或者檢索與正則表達式匹配的子字符串,并返回第1個匹配的子字符串在字符串中的起始位置match()在字符串中檢索指定的值,或者找到一個或多個正則表達式的匹配replace()替換與正則表達式匹配的子字符串split()把字符串分割為字符串數組1、在頁面中設置一個文本框和一個“提交”按鈕,HTML代碼如下:<body>輸入郵箱</br><formname="form1"method="post"action="ok.html">

郵箱:<inputname="email"type="text">*<inputtype="submit"name="btn"id="btn"value="提交"></form></body>【任務實現(xiàn)】2、在<head></head>標簽對中輸入以下代碼:<scripttype="text/javascript">window.onload=function(){ form1.onsubmit=function() { varreg=/^\w{3,}(\.\w+)*@[A-z0-9]+(\.[A-z]{2,5}){1,2}$/; if(!reg.test(form1.email.value)) { alert("郵箱地址格式不正確!"); returnfalse; } }}</script>【任務實現(xiàn)】任務7“項目四”的實現(xiàn)this關鍵字JavaScript中,this關鍵字有很多用法,一般指的是當前的對象。比如下列語句中的this指的就是文本框本身。<inputtype="text"id="txtname"onMouseDown="this.value='點擊鼠標'">【相關知識】在本項目中,當表單控件得到鼠標焦點時,操作鼠標或敲擊鍵盤都需要檢查其中的值,所以需要用到鼠標事件和鍵盤事件。在“年齡”文本框中不允許輸入非數字的值和在條件不符合時不允許提交表單都需要用到事件的返回值。檢查輸入的年齡值是否為數字還要用到Event對象?!救蝿辗治觥?、在<body>標簽對中編寫表單代碼:<body>注冊</br><formname="form1"method="post"action="ok.html">

姓名:<inputname="username"type="text">*

年齡:<inputname="age"type="text"id="age">* <selectname="sel_city"><optionvalue="0">請選擇城市</option><optionvalue="北京">北京</option><optionvalue="上海">上海</option><optionvalue="廣州">廣州</option> </select><inputname="city"type="text"size="12"readonly="readonly">*<inputtype="submit"name="btn"id="btn"value="提交"></form></body>【任務實現(xiàn)】2、在<head>標簽對中輸入以下代碼:<scripttype="text/javascript">window.onload=function(){ form1.username.onmouseover=function() { this.focus(); this.select(); } form1.age.onmouseover=function() { this.focus(); this.select(); }

【任務實現(xiàn)】

form1.age.onmouseover=function() { this.focus(); this.select(); } form1.age.onkeydown=function(ev) { oEvent=ev||event; if((oEvent.keyCode<48||oEvent.keyCode>57)&&oEvent.keyCode!=8) { returnfalse; } } form1.sel_city.onchange=function() { if(this.value==0) { alert("請選擇一個城市"); } else { form1.city.value=form1.sel_city.value; }

}

【任務實現(xiàn)】 form1.onsubmit=function() { varreg=/^([1-9][0-9]?)$/; if(form1.username.value=="") { alert("姓名未填寫,不能提交!"); form1.username.focus(); returnfalse; } elseif(form1.age.value=="") { alert("年齡未填寫,不能提交!"); form1.age.focus(); returnfalse; }

【任務實現(xiàn)】 elseif(!reg.test(form1.age.value)) { alert("年齡必須在1~99之間!"); form1.age.focus(); returnfalse; } elseif(form1.city.value==""||form1.city.value=="請選擇城市") { alert("城市未選擇,不能提交!"); form1.sel_city.focus(); returnfalse; } } form1.city.onmouseover=function() { if(this.value=="") { this.value="請選擇城市"; } }}</script>【任務實現(xiàn)】項目五多窗體注冊頁面——窗口對象設計一個多窗體的用戶注冊頁面,具體需求如下:①如圖5.1所示,在首頁上有一個“注冊”按鈕,點擊可以進入如圖5.2的注冊頁面。首頁窗體狀態(tài)欄上有一行文字“歡迎您光臨本站!”從右向左循環(huán)滾動。項目情境

圖5.1首頁

圖5.1首頁

圖5.2注冊頁面項目情境②打開如圖5.2所示注冊頁面,默認尺寸為280*400像素。點擊“注冊須知”按鈕打開一個對話框窗口(如圖5.3),此對話框窗口尺寸為200*200像素,點擊其中的“關閉”鏈接,可以關閉此對話框窗口。

圖5.3注冊須知項目情境③在圖5.2的注冊頁面的簡介文本區(qū)域框中填入簡介信息,點擊“編輯>>”按鈕,打開如圖5.4所示的頁面,在該頁面中可以重新編輯簡介信息,編輯完成后,點擊“確定修改并關閉本窗口”按鈕,將本窗口關閉,并且把重新編輯的簡介信息更新到注冊頁面的簡介文本區(qū)域框中。圖5.4編輯簡介頁面項目情境④點擊圖5.2注冊頁面中的“首頁”按鈕,頁面跳轉到圖5.1所示的首頁,點擊“關閉”按鈕,直接關閉注冊頁面。掌握窗體對象Window的常用屬性和方法。掌握地址對象Location的常用屬性和方法。掌握歷史對象History的常用屬性和方法。掌握屏幕對象Screen的常用屬性和方法。掌握瀏覽器對象Navigator的常用屬性和方法。學習目標在如圖5.5的頁面上有三個按鈕,點擊“關閉本窗口”按鈕,彈出如圖5.6所示的關閉窗口選擇對話框,點擊“是”按鈕,當前窗口關閉,點擊“否”,不關閉當前窗口。點擊“立即關閉本窗口”按鈕,窗口立即關閉,不彈出如圖5.6所示的選擇對話框。點擊“打開子窗口”按鈕,打開如圖5.7所示的窗口,點擊該窗口上的“關閉本窗口”按鈕,窗口立即關閉,不彈出如圖5.6所示的選擇對話框。任務1打開和關閉窗口圖5.5主窗口圖5.6關閉窗口選擇對話框圖5.7子窗口1、窗口對象WindowWindow對象代表的是整個瀏覽器窗口?!鞠嚓P知識】屬性描述

closed獲取引用窗口是否已關閉。

defaultStatus設置或獲取要在窗口底部的狀態(tài)欄上顯示的缺省信息。

dialogArguments設置或獲取傳遞給模式對話框窗口的變量或變量數組。

dialogHeight設置或獲取模式對話框的高度。

dialogLeft設置或獲取模式對話框的左坐標。

dialogTop設置或獲取模式對話框的頂坐標。

dialogWidth設置或獲取模式對話框的寬度。

frameElement獲取在父文檔中生成window的frame或iframe對象。

length設置或獲取集合中對象的數目。

name設置或獲取表明窗口名稱的值。

offscreenBuffering設置或獲取對象在對用戶可見之前是否要先在屏幕外繪制。

opener設置或獲取創(chuàng)建當前窗口的窗口的引用。

parent獲取對象層次中的父窗口。

returnValue設置或獲取從模式對話框返回的值。

screenLeft獲取瀏覽器客戶區(qū)左上角相對于屏幕左上角的x坐標。

screenTop獲取瀏覽器客戶區(qū)左上角相對于屏幕左上角的y坐標。

self獲取對當前窗口或框架的引用。

status設置或獲取位于窗口底部狀態(tài)欄的信息。

top獲取最頂層的祖先窗口?!鞠嚓P知識】事件描述

onblur在對象失去輸入焦點時觸發(fā)。

onerror當對象裝載過程中發(fā)生錯誤時觸發(fā)。

onfocus當對象獲得焦點時觸發(fā)。

onload在瀏覽器完成對象的裝載后立即觸發(fā)。

onmove當對象移動時觸發(fā)。

onmoveend當對象停止移動時觸發(fā)。

onmovestart當對象開始移動時觸發(fā)。

onresize當對象的大小將要改變時觸發(fā)。

onresizeend當用戶更改完控件選中區(qū)中對象的尺寸時觸發(fā)。

onresizestart當用戶開始更改控件選中區(qū)中對象的尺寸時觸發(fā)。

onscroll當用戶滾動對象的滾動條時觸發(fā)。

onunload在對象卸載前立即觸發(fā)?!鞠嚓P知識】方法描述

alert顯示包含由應用程序自定義消息的對話框。

blur使元素失去焦點并觸發(fā)onblur事件。

clearInterval使用setInterval方法取消先前開始的間隔事件。

clearTimeout取消先前用setTimeout方法設置的超時事件。

close關閉當前瀏覽器窗口或HTML應用程序(HTA)。

confirm顯示一個確認對話框,其中包含一個可選的消息和確定取消按鈕。

focus使得元素得到焦點并執(zhí)行由onfocus事件指定的代碼。

moveBy將窗口的位置移動指定x和y偏移值。

moveTo將窗口左上角的屏幕位置移動到指定的x和y位置。

navigate在當前窗口中裝入指定URL。

open打開新窗口并裝入給定URL的文檔。

prompt顯示一個提示對話框,其中帶有一條消息

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論