主要內容
本書通過大量實例 及一個完整項目案例,幫助讀者更好地鞏固所學知識,提升能力;隨書附贈的《小白實戰手冊》中給出了3個流行的實用案例的詳細開發流程,力求讓學習者能學以致用,真正獲得開發經驗;附贈的光碟中給出視頻講解、實例及項目源碼、代碼查錯器、練一練答案和動手糾錯答案等,方便讀者學習;書中設定了近200個二維碼,掃描二維碼觀看視頻講解,解決學習疑難;不易理解的專業術語、代碼難點只需手機掃描文字下方的e學碼獲得更多擴展解釋,隨時掃除學習障礙。此外,登錄明日學院網站還可以獲得更多學習資源和技術支持。圖書與《小白實戰手冊》+光碟+二維碼+e學碼+明日學院,實現立體化、全方位的教學模式,拉低編程門檻,讓零基礎者輕鬆跨入編程領域。
目錄
第1篇基礎知識
第1章JavaScript簡介........2
1.1 JavaScript簡述.......................3
1.2 WebStorm的下載與安裝.........................6
1.3 JavaScript在HTML中的使用............11
1.3.1 在頁面中直接嵌入
JavaScript代碼................11
1.3.2 連結外部JavaScript檔案........15
1.3.3 作為標籤的屬性值使用..........18
1.4 JavaScript基本語法..................18
1.5 難點解答.........................20
1.5.1 如何載入其他Web伺服器中的
JavaScript檔案................20
1.5.2 套用“javascript:”調用函式...20
1.6 小結............................20
第2章JavaScript語言基礎....21
2.1 數據類型.........................22
2.1.1 數值型........................22
2.1.2 字元串型......................26
2.1.3 布爾型........................29
2.1.4 特殊數據類型..................29
2.2 常量和變數..........................30
2.2.1 常量..........................30
2.2.2 變數..........................30
2.3 運算符..........................34
2.3.1 算術運算符....................34
2.3.2 字元串運算符..................36
2.3.3 比較運算符....................37
2.3.4 賦值運算符....................39
2.3.5 邏輯運算符....................41
2.3.6 條件運算符....................43
2.3.7 其他運算符....................44
2.3.8 運算符優先權..................46
2.4 表達式..........................48
2.5 數據類型的轉換規則..................49
2.6 難點解答.........................50
2.6.1 如何在字元串中輸出字元“\” ...50
2.6.2 null和undefined的用法.........51
2.7 小結............................51
2.8 動手糾錯.........................51
第3章JavaScript基本語句....53
3.1 條件判斷語句........................54
3.1.1 if語句........................54
3.1.2 switch語句....................63
3.2 循環語句.........................66
3.2.1 while語句.....................66
3.2.2 do…while語句.................68
3.2.3 for語句.......................70
3.2.4 循環語句的嵌套................73
3.3 跳轉語句.........................75
3.3.1 continue語句..................75
3.3.2 break語句.....................77
3.4 異常處理語句........................78
3.4.1 try catch finally語句.....78
3.4.2 Error對象.....................79
3.4.3 使用throw語句拋出異常.........80
3.5 難點解答............................93
3.5.1 do…while語句和
while語句的區別...............93
3.5.2 continue語句和
break語句的作用...............93
3.6 小結............................81
3.7 動手糾錯.........................81
第4章函式..............83
4.1 函式的定義和調用....................84
4.1.1 函式的定義....................84
4.1.2 函式的調用....................85
4.2 函式的參數..........................87
4.3 函式的返回值........................89
4.4 嵌套函式.........................91
4.4.1 函式的嵌套定義................91
4.4.2 函式的嵌套調用................92
4.5 遞歸函式.........................94
4.6 變數的作用域........................95
4.6.1 全局變數和局部變數............95
4.6.2 變數的優先權..................96
4.7 內置函式.........................96
4.7.1 數值處理函式..................97
4.7.2 字元串處理函式................99
4.8 定義匿名函式.......................100
4.8.1 在表達式中定義函式...........100
4.8.2 使用Function()構造函式.......102
4.9 難點解答........................103
4.9.1 實參個數和形參個數
不同的情況...................103
4.9.2 在函式體內定義全局變數.......103
4.10 小結..........................104
4.11 動手糾錯.......................104
第5章對象.............105
5.1 對象簡介........................106
5.1.1 什麼是對象...................106
5.1.2 對象的屬性和方法.............107
5.1.3 JavaScript對象的種類.........107
5.2 自定義對象的創建...................108
5.2.1 直接創建自定義對象...........108
5.2.2 通過自定義構造函式創建對象...109
5.2.3 通過Object對象創建
自定義對象...................115
5.3 對象訪問語句.......................117
5.3.1 for…in語句..................117
5.3.2 with語句.....................118
5.4 常用內部對象.......................119
5.4.1 Math對象.....................119
5.4.2 Date對象.....................123
5.5 難點解答........................130
5.5.1 如何獲取0到9之間的隨機整數...130
5.5.2 創建指定日期對象.............131
5.6 小結...........................131
5.7 動手糾錯........................131
第6章數組.............133
6.1 數組介紹........................134
6.2 定義數組........................134
6.2.1 定義空數組...................135
6.2.2 指定數組長度.................135
6.2.3 指定數組元素.................136
6.2.4 直接定義數組.................136
6.3 運算元組元素.......................137
6.3.1 數組元素的輸入和輸出.........137
6.3.2 數組元素的添加...............139
6.3.3 數組元素的刪除...............140
6.4 數組的屬性.........................141
6.4.1 length屬性...................141
6.4.2 prototype屬性................143
6.5 數組的方法.........................145
6.5.1 數組的添加和刪除.............146
6.5.2 設定數組的排列順序...........150
6.5.3 獲取某段數組元素.............153
6.5.4 數組轉換成字元串.............156
6.6 難點解答........................157
6.6.1 如何刪除數組中後面的
幾個元素.....................157
6.6.2 計算數組元素的和.............157
6.7 小結...........................158
6.8 動手糾錯........................158
第7章String對象...........161
7.1 String對象的創建...................162
7.2 String對象的屬性...................162
7.2.1 length屬性...................162
7.2.2 constructor屬性..............164
7.2.3 prototype屬性................165
7.3 String對象的方法...................166
7.3.1 查找字元串...................166
7.3.2 截取字元串...................170
7.3.3 大小寫轉換...................173
7.3.4 連線和拆分...................174
7.3.5 格式化字元串.................177
7.4 難點解答........................178
7.4.1 substring()方法參數的
特殊情況.....................178
7.4.2 slice()方法和substring()方法的
相同點和不同點...............179
7.5 小結...........................179
7.6 動手糾錯........................179
第2篇核心技術
第8章JavaScript事件處理...182
8.1 事件與事件處理概述.................183
8.1.1 什麼是事件.......................183
8.1.2 JavaScript的常用事件.............183
8.1.3 事件的調用...................184
8.1.4 事件對象.....................185
8.2 表單相關事件.......................186
8.2.1 獲得焦點與失去焦點事件.......186
8.2.2 失去焦點內容改變事件.........189
8.2.3 表單提交與重置事件...........190
8.3 滑鼠鍵盤事件.......................192
8.3.1 滑鼠單擊事件.................192
8.3.2 滑鼠按下和鬆開事件...........194
8.3.3 滑鼠移入移出事件.............195
8.3.4 滑鼠移動事件.................197
8.3.5 鍵盤事件.....................198
8.4 頁面事件........................201
8.4.1 載入與卸載事件...............201
8.4.2 頁面大小事件.................203
8.5 難點解答........................203
8.5.1 onkeypress、onkeydown和onkeyup
事件的區別...................203
8.5.2 觸發onunload事件的條件.......203
8.6 小結...........................204
8.7 動手糾錯........................204
第9章文檔對象..........205
9.1 文檔對象概述.......................206
9.2 文檔對象的套用.....................207
9.2.1 連結文字顏色設定.............207
9.2.2 文檔背景色和前景色設定.......209
9.2.3 獲取並設定URL ................211
9.2.4 在文檔中輸出數據.............212
9.2.5 動態添加一個HTML標記.........213
9.2.6 獲取文本框並修改其內容.......215
9.3 難點解答........................216
9.3.1 設定頁面跳轉.................216
9.3.2 bgColor屬性和fgColor屬性解析...216
9.4 小結...........................217
9.5 動手糾錯........................217
第10章表單對象.........219
10.1 訪問表單與表單元素................220
10.1.1 JavaScript訪問表單..........220
10.1.2 JavaScript訪問表單元素......220
10.2 表單對象的屬性、方法與事件........221
10.3 表單元素.......................222
10.3.1 文本框......................222
10.3.2 按鈕........................225
10.3.3 單選按鈕和複選框............227
10.3.4 下拉選單....................230
10.4 難點解答.......................235
10.4.1 如何獲取選中的單選按鈕或
複選框的值..................235
10.4.2 defaultSelected屬性和selected
屬性的區別..................235
10.5 小結..........................235
10.6 動手糾錯.......................235
第11章圖像對象.........237
11.1 圖像對象概述......................238
11.1.1 圖像對象介紹................238
11.1.2 圖像對象的屬性..............238
11.1.3 圖像對象的事件..............240
11.2 圖像對象的套用....................242
11.2.1 圖片的隨機顯示..............242
11.2.2 圖片置頂....................244
11.2.3 圖片翻轉效果................246
11.3 難點解答.......................250
11.3.1 如何獲取0到某個數字的
隨機整數....................250
11.3.2 documentElement對象中的
定位屬性介紹.................250
11.4 小結..........................251
11.5 動手糾錯.......................251
第12章文檔對象模型(DOM)...253
12.1 DOM概述...........................254
12.2 DOM對象節點屬性...............255
12.3 節點的操作........................256
12.3.1 創建節點....................256
12.3.2 插入節點....................258
12.3.3 複製節點....................260
12.3.4 刪除節點....................262
12.3.5 替換節點....................263
12.4 獲取文檔中的指定元素..............277
12.4.1 通過元素的id屬性獲取元素....277
12.4.2 通過元素的name屬性獲取元素...279
12.5 與DHTML相對應的DOM................281
12.5.1 innerHTML和innerText屬性....281
12.5.2 outerHTML和outerText屬性....283
12.6 難點解答.......................284
12.6.1 如何通過元素的name屬性
獲取元素的值................284
12.6.2 innerHTML屬性和outerHTML
屬性的區別..................284
12.7 小結..........................285
12.8 動手糾錯.......................285
第13章Window視窗對象......275
13.1 Window對象概述....................276
13.1.1 Window對象的屬性............276
13.1.2 Window對象的方法............277
13.1.3 Window對象的使用............277
13.2 對話框..........................278
13.2.1 警告對話框..................278
13.2.2 確認對話框..................280
13.2.3 提示對話框..................281
13.3 打開與關閉視窗....................282
13.3.1 打開視窗....................282
13.3.2 關閉視窗....................285
13.4 控制視窗.......................288
13.4.1 移動視窗....................288
13.4.2 視窗滾動....................291
13.4.3 改變視窗大小................292
13.4.4 訪問視窗歷史................294
13.4.5 設定逾時....................295
13.5 視窗事件.......................297
13.6 難點解答.......................298
13.6.1 在使用確認對話框時
return語句的套用............298
13.6.2 resizeTo()方法和
resizeBy()方法的區別........299
13.7 小結..........................299
13.8 動手糾錯.......................299
第3篇高級套用
第14章Ajax技術............302
14.1 Ajax概述..........................303
14.1.1 Ajax套用案例................303
14.1.2 Ajax的開發模式..............304
14.1.3 Ajax的優點..................305
14.2 Ajax的技術組成....................305
14.2.1 XMLHttpRequest對象..........305
14.2.2 XML語言.....................306
14.2.3 JavaScript腳本語言..........307
14.2.4 DOM .........................308
14.2.5 CSS .........................308
14.3 XMLHttpRequest對象................308
14.3.1 XMLHttpRequest對象的初始化..309
14.3.2 XMLHttpRequest對象的
常用屬性....................310
14.3.3 XMLHttpRequest對象的
常用方法....................311
14.4 難點解答.......................316
14.4.1 指定事件處理器時調用
帶參數的函式................316
14.4.2 Apache伺服器的根目錄........316
14.5 小結..........................316
14.6 動手糾錯.......................316
第15章jQuery基礎..........319
15.1 jQuery概述........................320
15.2 jQuery下載與配置..................320
15.3 jQuery選擇器......................321
15.3.1 jQuery的工廠函式............322
15.3.2 基本選擇器..................322
15.3.3 層級選擇器..................330
15.3.4 過濾選擇器..................339
15.3.5 屬性選擇器..................347
15.3.6 表單選擇器..................347
15.4 難點解答.......................350
15.4.1 套用:even和:odd匹配
表格行的問題................350
15.4.2 如何獲取選中的複選框的值....350
15.5 小結..........................351
15.6 動手糾錯.......................351
第16章jQuery控制頁面
和事件處理..........353
16.1 jQuery控制頁面....................354
16.1.1 對元素內容和值進行操作......354
16.1.2 對DOM節點進行操作...........359
16.1.3 對元素屬性進行操作..........365
16.1.4 對元素的CSS樣式進行操作.....366
16.2 jQuery的事件處理..................367
16.2.1 頁面載入回響事件............367
16.2.2 jQuery中的事件..............368
16.2.3 事件綁定....................369
16.2.4 模擬用戶操作................371
16.3 難點解答.......................374
16.3.1 text()方法和html()方法
在獲取內容時的不同..........374
16.3.2 $(document).ready()方法
和window.onload()方法的區別.374
16.4 小結..........................375
16.5 動手糾錯.......................375
第17章jQuery動畫效果......377
17.1 基本的動畫效果....................378
17.2 淡入、淡出的動畫效果..............381
17.3 滑動效果..........................382
17.4 自定義的動畫效果..................385
17.5 難點解答.......................388
17.5.1 套用stop()方法停止
動畫時的狀態................388
17.5.2 怎樣使元素在當前位置
向右移動指定距離............388
17.6 小結..........................389
17.7 動手糾錯.......................389
第4篇項目實戰
第18章365影視網站設計.....392
18.1 系統分析.......................393
18.2 系統設計.......................393
18.2.1 系統目標....................393
18.2.2 系統功能結構................393
18.2.3 開發環境....................394
18.2.4 資料夾組織結構..............395
18.3 網頁預覽.......................395
18.4 關鍵技術.......................398
18.4.1 JavaScript腳本技術..........398
18.4.2 Ajax無刷新技術..............400
18.4.3 jQuery技術..................401
18.5 首頁技術實現......................402
18.5.1 JavaScript實現導航選單......402
18.5.2 JavaScript實現圖片的
輪換效果....................404
18.5.3 Ajax實現熱門專題頁面........405
18.5.4 JavaScript實現電影圖片
不間斷滾動..................408
18.5.5 JavaScript實現浮動視窗......410
18.5.6 jQuery實現滑動門效果........411
18.5.7 jQuery實現向上間斷滾動效果..413
18.6 查看影片詳情頁面..................415
18.7 小結..........................418
實例索引.................419