官术网_书友最值得收藏!

1.1 JavaScript簡述

視頻講解

JavaScript是Web頁面中的一種腳本編程語言,也是一種通用的、跨平臺的、基于對象和事件驅動并具有安全性的腳本語言。它不需要進行編譯,而是直接嵌入HTML頁面中,把靜態頁面轉變成支持用戶交互并響應相應事件的動態頁面。

1.1.1 JavaScript的起源

JavaScript語言的前身是LiveScript語言。由美國Netscape(網景)公司的布瑞登·艾克(Brendan Eich)為即將在1995年發布的Navigator 2.0瀏覽器的應用而開發的腳本語言。在與Sun(升陽)公司聯手及時完成了LiveScript語言的開發后,就在Navigator 2.0即將正式發布前,Netscape公司將其改名為JavaScript,也就是最初的JavaScript 1.0版本。雖然當時JavaScript 1.0版本還有很多缺陷,但擁有著JavaScript 1.0版本的Navigator 2.0瀏覽器幾乎主宰著瀏覽器市場。

因為JavaScript 1.0如此成功,Netscape公司在Navigator 3.0中發布了JavaScript 1.1版本。同時微軟開始進軍瀏覽器市場,發布了Internet Explorer 3.0并搭載了一個JavaScript的類似版本,其注冊名稱為JScript,這成為JavaScript語言發展過程中的重要一步。

在微軟進入瀏覽器市場后,此時有3種不同的JavaScript版本同時存在,Navigator中的JavaScript、IE中的JScript以及CEnvi中的ScriptEase。與其他編程語言不同的是,JavaScript并沒有一個標準來統一其語法或特性,而這3種不同的版本恰恰突出了這個問題。1997年,JavaScript 1.1版本作為一個草案提交給歐洲計算機制造商協會(ECMA)。最終由來自Netscape、Sun、微軟、Borland和其他一些對腳本編程感興趣的公司的程序員組成了TC39委員會,該委員會被委派來標準化一個通用、跨平臺、中立于廠商的腳本語言的語法和語義。TC39委員會制定了“ECMAScript程序語言的規范書”(又稱為“ECMA-262標準”),該標準通過國際標準化組織(ISO)采納通過,作為各種瀏覽器生產開發所使用的腳本程序的統一標準。

1.1.2 JavaScript的主要特點

JavaScript腳本語言的主要特點如下。

 解釋性

JavaScript不同于一些編譯性的程序語言,例如C、C++等,它是一種解釋性的程序語言,它的源代碼不需要經過編譯,而直接在瀏覽器中運行時被解釋。

 基于對象

JavaScript是一種基于對象的語言。這意味著它能運用自己已經創建的對象。因此,許多功能可以來自于腳本環境中對象的方法與腳本的相互作用。

 事件驅動

JavaScript可以直接對用戶或客戶輸入做出響應,無須經過Web服務程序。它對用戶的響應,是以事件驅動的方式進行的。所謂事件驅動,就是指在主頁中執行了某種操作所產生的動作,此動作稱為“事件”。例如按下鼠標、移動窗口、選擇菜單等都可以視為事件。當事件發生后,可能會引起相應的事件響應。

 跨平臺

JavaScript依賴于瀏覽器本身,與操作環境無關,只要能運行瀏覽器的計算機,并支持JavaScript的瀏覽器就可以正確執行。

 安全性

JavaScript是一種安全性語言,它不允許訪問本地的硬盤,并不能將數據存入服務器上,不允許對網絡文檔進行修改和刪除,只能通過瀏覽器實現信息瀏覽或動態交互。這樣可有效地防止數據的丟失。

1.1.3 JavaScript的應用

使用JavaScript腳本實現的動態頁面,在Web上隨處可見。下面將介紹幾種JavaScript常見的應用。

 驗證用戶輸入的內容

使用JavaScript腳本語言可以在客戶端對用戶輸入的數據進行驗證。例如在制作用戶注冊信息頁面時,要求用戶確認密碼,以確定用戶輸入的密碼是否正確。如果用戶在“確認密碼”文本框中輸入的信息與“注冊密碼”文本框中輸入的信息不同,將彈出相應的提示信息,如圖1.1所示。

圖1.1 驗證兩次密碼是否相同

 動畫效果

在瀏覽網頁時,經常會看到一些動畫效果,使頁面更加生動。使用JavaScript腳本語言也可以實現動畫效果,例如在頁面中實現下雪的效果,如圖1.2所示。

圖1.2 動畫效果

 窗口的應用

在打開網頁時經常會看到一些浮動的廣告窗口,這些廣告窗口是某些網站的盈利手段之一。我們也可以通過JavaScript腳本語言來實現,例如,如圖1.3所示的廣告窗口。

圖1.3 窗口的應用

 文字特效

使用JavaScript腳本語言可以使文字實現多種特效。例如使文字旋轉,如圖1.4所示。

圖1.4 文字特效

 明日學院應用的jQuery效果

在明日學院的“讀書”欄目中,應用jQuery實現了滑動顯示和隱藏子菜單的效果。當單擊某個主菜單時,將滑動顯示相應的子菜單,而其他子菜單將會滑動隱藏,如圖1.5所示。

圖1.5 明日學院應用的jQuery效果

 京東網上商城應用的jQuery效果

在京東網上商城的話費充值頁面,應用jQuery實現了標簽頁的效果,當選擇“話費快充”選項卡時,標簽頁中將顯示話費快充的相關內容,如圖1.6所示,當選擇其他選項卡時,標簽頁中將顯示相應的內容。

圖1.6 京東網上商城應用的jQuery效果

 應用Ajax技術實現百度搜索提示

在百度首頁的搜索文本框中輸入要搜索的關鍵字時,下方會自動給出相關提示。如果給出的提示有符合要求的內容,可以直接選擇,這樣可以方便用戶。例如,輸入“明日科”后,在下面將顯示如圖1.7所示的提示信息。

圖1.7 百度搜索提示頁面

主站蜘蛛池模板: 德兴市| 额尔古纳市| 平武县| 齐河县| 来宾市| 新民市| 肇庆市| 永修县| 平南县| 平罗县| 宽城| 隆昌县| 昌乐县| 上思县| 南阳市| 芮城县| 富宁县| 清新县| 清水河县| 古丈县| 任丘市| 丹江口市| 泰和县| 湘乡市| 贵州省| 马龙县| 通州区| 孝义市| 疏勒县| 南召县| 通辽市| 错那县| 大名县| 六枝特区| 门源| 宜宾市| 迁西县| 山阴县| 大城县| 西乌珠穆沁旗| 两当县|