3atv精品不卡视频,97人人超碰国产精品最新,中文字幕av一区二区三区人妻少妇,久久久精品波多野结衣,日韩一区二区三区精品

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

JavaScript教程--从入门到精通

發布時間:2025/3/14 javascript 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JavaScript教程--从入门到精通 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
JavaScript是由Netscape公司開發并隨Navigator導航者一起發布的、介于Java與HTML之間、基于對象事件驅動的編程語言,正日益受到全球的關注。因它的開發環境簡單,不需要Java編譯器,而是直接運行在Web瀏覽器中,而因倍受Web設計者的所愛。   這一套JavaScript教程分九個章節從什么是JavaScript、JavaScript的簡單應用一直介紹到如何用JavaScript實現復雜的交互,對于JavaScript初學者和進階者來說,都是一部不可多得的優秀教程。

  JavaScript教程語言概況

  Internet時代,造就了我們新的工作和生活方式,其互聯性、開放性和共享信息的模式,打破了傳統信息傳播方式的重重壁壘,為我們帶來了新的機遇。隨著計算機和信息時代的到來,人類社會前進的腳步在逐漸加快,每一天都有新的事情發生,每一天都在創造著奇跡。隨著Internet技術的突飛猛進,各行各業都在加入Internet的行業中來。無論從管理方面,還是從商業角度來看,Internet都可以帶來無限生機。通過Internet,可以實現地區、集體乃至個人的連接,從而達到一種“統一的和諧”。那么怎樣把自己的或公司的信息資源加入到WWW 服務器,是廣大用戶日益關心的問題。采用超鏈技術(超文本和超媒體技術)是實現這個目標最簡單的、最快速的手段和途徑。具體實現這種手段的支持環境,那就是HTML超文本標識語言。通過它們可制作所需的Web網頁。
  通過超文本(Hyper Text)和超媒體(Hyper Media)技術結合超鏈接(Hyper link)的鏈接功能將各種信息組織成網絡結構(web),構成網絡文檔(Document),實現Internet上的“漫游”。通過HTML符號的描述就可以實現文字、表格、聲音、圖像、動畫等多媒體信息的檢索。
  然而采用這種超鏈技術存在有一定的缺陷,那就是它只能提供一種靜態的信息資源,缺少動態的客戶端與服務器端的交互。雖然可通過CGI(Common Gateway Interface)通用網關接口實現一定的交互,但由于該方法編程較為復雜,因而在一段時間防礙了Internet技術的發展。而JavaScript的出現,無凝為Internet網上用戶帶來了一線生機。可以這樣說,JavaScript的出現是時代的需求,是當今的信息時代造就了JavaScript。
  JavaScript的出現,它可以使得信息和用戶之間不僅只是一種顯示和瀏覽的關系,而是實現了一種實時的、動態的、可交式的表達能力。從而基于CGI靜態的HTML頁面將被可提供動態實時信息,并對客戶操作進行反應的Web頁面的取代。JavaScript腳本正是滿足這種需求而產生的語言。它深受廣泛用戶的喜愛的歡迎。它是眾多腳本語言中較為優秀的一種,它與WWW的結合有效地實現了網絡計算和網絡計算機的藍圖。無凝Java家族將占領Internet網絡的主導地位。因此,盡快掌握JavaScript腳本語言編程方法是我國廣大用戶日益關心的。
  一、什么是JavaScript
  JavaScript是一種基于對象(Object)和事件驅動(Event Driven)并具有安全性能的腳本語言。使用它的目的是與HTML超文本標記語言、Java 腳本語言(Java小程序)一起實現在一個Web頁面中鏈接多個對象,與Web客戶交互作用。從而可以開發客戶端的應用程序等。它是通過嵌入或調入在標準的HTML語言中實現的。它的出現彌補了HTML語言的缺陷,它是Java與HTML折衷的選擇,具有以下幾個基本特點:
  腳本編寫語言
  JavaScript是一種腳本語言,它采用小程序段的方式實現編程。像其它腳本語言一樣,JavaScript同樣已是一種解釋性語言,它提供了一個易的開發過程。
  它的基本結構形式與C、C++、VB、Delphi十分類似。但它不像這些語言一樣,需要先編譯,而是在程序運行過程中被逐行地解釋。它與HTML標識結合在一起,從而方便用戶的使用操作。
  基于對象的語言
  JavaScript是一種基于對象的語言,同時以可以看作一種面向對象的。這意味著它能運用自己已經創建的對象。因此,許多功能可以來自于腳本環境中對象的方法與腳本的相互作用。
  簡單性
  JavaScript的簡單性主要體現在:首先它是一種基于Java基本語句和控制流之上的簡單而緊湊的設計, 從而對于學習Java是一種非常好的過渡。其次它的變量類型是采用弱類型,并未使用嚴格的數據類型。
  安全性
  JavaScript是一種安全性語言,它不允許訪問本地的硬盤,并不能將數據存入到服務器上,不允許對網絡文檔進行修改和刪除,只能通過瀏覽器實現信息瀏覽或動態交互。從而有效地防止數據的丟失。
  動態性
  JavaScript是動態的,它可以直接對用戶或客戶輸入做出響應,無須經過Web服務程序。它對用戶的反映響應,是采用以事件驅動的方式進行的。所謂事件驅動,就是指在主頁(Home Page)中執行了某種操作所產生的動作,就稱為“事件”(Event)。比如按下鼠標、移動窗口、選擇菜單等都可以視為事件。當事件發生后,可能會引起相應的事件響應。
  跨平臺性
  JavaScript是依賴于瀏覽器本身,與操作環境無關,只要能運行瀏覽器的計算機,并支持JavaScript的瀏覽器就可正確執行。從而實現了“編寫一次,走遍天下”的夢想。
  實際上JavaScript最杰出之處在于可以用很小的程序做大量的事。無須有高性能的電腦,軟件僅需一個字處理軟件及一瀏覽器,無須WEB服務器通道,通過自己的電腦即可完成所有的事情。
  綜合所述JavaScript 是一種新的描述語言,它可以被箝入到 HTML 的文件之中。 JavaScript語言可以做到回應使用者的需求事件 (如: form 的輸入) ,而不用任何的網路來回傳輸資料,所以當一位使用者輸入一項資料時,它不用經過傳給伺服端 (server)處理,再傳回來的過程,而直接可以被客戶端 (client) 的應用程式所處理。
  JavaScript 和 Java 很類似,但到底并不一樣! Java 是一種比 JavaScript 更復雜許多的程式語言,而 JavaScript 則是相當容易了解的語言。JavaScript 創作者可以不那麼注重程式技巧,所以許多 Java 的特性在 Java Script 中并不支援。   

二、JavaScript和Java的區別

  雖然JavaScript與Java有緊密的聯系,但卻是兩個公司開發的不同的兩個產品。Java是SUN公司推出的新一代面向對象的程序設計語言,特別適合于Internet應用程序開發;而JavaScript是Netscape公司的產品,其目的是為了擴展Netscape Navigator功能,而開發的一種可以嵌入Web頁面中的基于對象和事件驅動的解釋性語言,它的前身是Live Script;而Java的前身是Oak語言。下面對兩種語言間的異同作如下比較:
  基于對象和面向對象
  Java是一種真正的面向對象的語言,即使是開發簡單的程序,必須設計對象。
  JavaScript是種腳本語言,它可以用來制作與網絡無關的,與用戶交互作用的復雜軟件。它是一種基于對象(Object Based)和事件驅動(Event Driver)的編程語言。因而它本身提供了非常豐富的內部對象供設計人員使用。
  解釋和編譯
  兩種語言在其瀏覽器中所執行的方式不一樣。Java的源代碼在傳遞到客戶端執行之前,必須經過編譯,因而客戶端上必須具有相應平臺上的仿真器或解釋器,它可以通過編譯器或解釋器實現獨立于某個特定的平臺編譯代碼的束縛。
  JavaScript是一種解釋性編程語言,其源代碼在發往客戶端執行之前不需經過編譯,而是將文本格式的字符代碼發送給客戶編由瀏覽器解釋執行。
  強變量和弱變量
  兩種語言所采取的變量是不一樣的。
  Java采用強類型變量檢查,即所有變量在編譯之前必須作聲明。如:
  Integer x;
  String y;
  x=1234;
  x=4321;
  其中X=1234說明是一個整數,Y=4321說明是一個字符串。
  JavaScript中變量聲明,采用其弱類型。即變量在使用前不需作聲明,而是解釋器在運行時檢查其數據類型,如:
  x=1234;
  y="4321";
  前者說明x為其數值型變量,而后者說明y為字符型變量。
  代碼格式不一樣
  Java是一種與HTML無關的格式,必須通過像HTML中引用外媒體那么進行裝載,其代碼以字節代碼的形式保存在獨立的文檔中。
  JavaScript的代碼是一種文本字符格式,可以直接嵌入HTML文檔中,并且可動態裝載。編寫HTML文檔就像編輯文本文件一樣方便。
  嵌入方式不一樣
  在HTML文檔中,兩種編程語言的標識不同,JavaScript使用<Script>...</Script>來標識,而Java使用<applet>...</applet>來標識。
  靜態聯編和動態聯編
  Java采用靜態聯編,即Java的對象引用必須在編譯時的進行,以使編譯器能夠實現強類型檢查。
  JavaScript采用動態聯編,即JavaScript的對象引用在運行時進行檢查,如不經編譯則就無法實現對象引用的檢查。
  三、JavaScript程序運行環境
  Java運行環境
  軟件環境:
  Windows 95/98或Windows NT。
  Netscape Navigator x.0或Internet Explorer x.0。
  用于編輯HTML文檔的字符編輯器(WS、WPS、Notepad、WordPad等)或HTML文檔編輯器。
  硬件配置:
  首先必須具備運行Windows 95/98或Windows NT的基本硬件配置環境。推薦:
  基本內存32M。
  CRT只少需要256顏色,分辨率在640X480以上。
  CPU只少233以上。
  鼠標和其它外部設置(根據需要選用)。
  四、編寫第一個JavaScript程序
  下面我們通過一個例子,編寫第一個JavaScript程序。通過它可說明JavaScript的腳本是怎樣被嵌入到HTML文檔中的。
test1.html文檔:
<html>
<head>
<Script Language ="JavaScript">
// JavaScript Appears here.
alert("這是第一個JavaScript例子!");
alert("歡迎你進入JavaScript世界!");
alert("今后我們將共同學習JavaScript知識!");
</Script>
</Head>
</Html>
在Internet Explore5.0中運行行后的結果見圖1-1所示。


說明:test.html是HTML文檔,其標識格式為標準的HTML格式;如同HTML標識語言一樣, JavaScript程序代碼是一些可用字處理軟件瀏覽的文本,它在描述頁面的HTML相關區域出現。   JavaScript代碼由 <Script Language ="JavaScript">...</Script>說明。在標識<Script Language ="JavaScript">...</Script>之間就可加入JavaScript腳本。
  alert()是JavaScript的窗口對象方法,其功能是彈出一個具有OK對話框并顯示()中的字符串。
  通過<!-- ...//-->標識說明:若不認識JavaScript代碼的瀏覽器,則所有在其中的標識均被忽略;若認識,則執行其結果。使用注釋這是一個好的編程習慣,它使其他人可以讀懂你的語言。
JavaScript 以 </Script> 標簽結束。

  從上面的實例分析中我們可以看出,編寫一個JavaScript程序確實非常容易的。 JavaScript基本數據結構   JavaScript提供腳本語言的編程與C++非常相似,它只是去掉了C語言中有關指針等容易產生的錯誤,并提供了功能強大的類庫。對于已經具備C++或C語言的人來說,學習JavaScript腳本語言是一件非常輕松愉快的事。
  一、JavaScript代碼的加入
  JavaScript的腳本包括在HTML中,它成為HTML文檔的一部分。與HTML標識相結合,構成了一個功能強大的Internet網上編程語言。可以直接將JavaScript腳本加入文檔:
<Script Language ="JavaScript">
JavaScript語言代碼;
JavaScript 語言代碼;
....
</Script>
  說明:
  通過標識<Script>...</Script>指明JavaScript腳本源代碼將放入其間。
  通過屬性Language ="JavaScript"說明標識中是使用的何種語言,這里是JavaScript語言, 表示在JavaScript中使用的語言。
  下面是將JavaScript腳本加入Web文檔中的例子:
Test2.html
<HTML>
<Head>
<Script Language ="JavaScript">
document. Write("這是賽迪網互動學校");
document. close();
</Script>
</Head>
</HTML>
  在瀏覽器的窗口中調用test2.html,則顯示“這是賽迪網互動學校”字串。見圖2所示。

圖2
說明:
  Document. write()是文檔對象的輸出函數,其功能是將括號中的字符或變量值輸出到窗口;document. close()是將輸出關閉。
可將<Script>...</Script>標識放入head>.. </Head>或<Body> ...</Body>之間。將JavaScript標識放置<Head>... </Head>在頭部之間,使之在主頁和其余部分代碼之前裝載,從而可使代碼的功能更強大;可以將JavaScript標識放置在<Body>... </Body>主體之間以實現某些部分動態地創建文檔。
  二、基本數據類型
  JavaScript腳本語言同其它語言一樣,有它自身的基本數據類型、表達式和算術運算符以及程序的基本框架結構。JavaScript提供了四種基本的數據類型用來處理數字和文字, 而變量提供存放信息的地方, 表達式則可以完成較復雜的信息處理。
  1、基本數據類型
  在JavaScript中四種基本的數據類型:數值(整數和實數)、字符串型(用“”號或‘’括起來的字符或數值)、布爾型(使True或False表示)和空值。在JavaScript的基本類型中的數據可以是常量,也可以變量。由于JavaScript采用弱類型的形式,因而一個數據的變量或常量不必首先作聲明,而是在使用或賦值時確定其數據的類型的。當然也可以先聲明該數據的類型,它是通過在賦值時自動說明其數據類型的。
2、常量
 整型常量
JavaScript的常量通常又稱字面常量,它是不能改變的數據。其整型常量可以使用十六進制、八進制和十進制表示其值。
 實型常量
實型常量是由整數部分加小數部分表示,如12.32、193.98 。可以使用科學或標準方法表示:5E7、4e5等。
  布爾值
  布爾常量只有兩種狀態:True或False。 它主要用來說明或代表一種狀態或標志,以說明操作流程。它與C++是不一樣的,C++可以用1或0表示其狀態,而JavaScript只能用True或False表示其狀態。
  字符型常量
  使用單引號(‘)或雙引號(“)括起來的一個或幾個字符。如 "This is a book of JavaScript "、"3245"、"ewrt234234" 等。
 空值
JavaScript中有一個空值null,表示什么也沒有。如試圖引用沒有定義的變量,則返回一個Null值。
 特殊字符
同C語言一樣,JavaScript中同樣以有些以反斜杠(/)開頭的不可顯示的特殊字符。通常稱為控制字符。
 
  3、變量
  變量的主要作用是存取數據、提供存放信息的容器。對于變量必須明確變量的命名、變量的類型、變量的聲明及其變量的作用域。
 變量的命名
JavaScript中的變量命名同其計算機語言非常相似,這里要注意以下兩點:
A、必須是一個有效的變量,即變量以字母開頭,中間可以出現數字如test1、text2等。除下劃線(-)作為連字符外,變量名稱不能有空格、(+)、(-)、(,)或其它符號。
B、不能使用JavaScript中的關鍵字作為變量。
在JavaScript中定義了40多個類鍵字,這些關鍵是JavaScript內部使用的,不能作為變量的名稱。如Var、int、double、true不能作為變量的名稱。
  在對變量命名時,最好把變量的意義與其代表的意思對應起來,以免出現錯誤。
  變量的類型
  在JavaScript中,變量可以用命令Var作聲明:
var mytest;
該例子定義了一個mytest變量。但沒有賦予它的值。
Var mytest=”This is a book”
該例子定義了一個mytest變量, 同時賦予了它的值。
在JavaScript中,變量以可以不作聲明,而在使用時再根據數據的類型來確其變量的類型。
如:
x=100
y="125"
xy= True
cost=19.5等。
其中x整數,y為字符串,xy為布爾型,cost為實型。
 變量的聲明及其作用域
JavaScript變量可以在使用前先作聲明,并可賦值。通過使用var關鍵字對變量作聲明。對變量作聲明的最大好處就是能及時發現代碼中的錯誤;因為JavaScript是采用動態編譯的,而動態編譯是不易發現代碼中的錯誤,特別是變量命名的方面。
對于變量還有一個重要性──那就是變量的作用域。在JavaScript中同樣有全局變量和局部變量。全局變量是定義在所有函數體之外,其作用范圍是整個函數;而局部變量是定義在函數體之內,只對其該函數是可見的,而對其它函數則是不可見的。

三、表達式和運算符
  1、表達式
  在定義完變量后,就可以對它們進行賦值、改變、計算等一系列操作,這一過程通常又叫稱一個叫表達式來完成,可以說它是變量、常量、布爾及運算符的集合,因此表達式可以分為算術表述式、字串表達式、賦值表達式以及布爾表達式等。
  2、運算符
  運算符完成操作的一系列符號,在JavaScript中有算術運算符,如+、-、*、/等;有比較運算符如!=、==等; 有邏輯布爾運算符如!(取反)、|、||; 有字串運算如+ 、 +=等。
  在JavaScript主要有雙目運算符和單目運算符。其雙目運算符由下列組成:
操作數1 運算符 操作數2
  即由兩個操作數和一個運算符組成。如50+40、"This"+"that"等。單目運算符,只需一個操作數,其運算符可在前或后。
(1)算術運算符
  JavaScript中的算術運算符有單目運算符和雙目運算符。
雙目運算符:
+(加) 、-(減)、 *(乘)、 /(除)、 %(取模) 、|(按位或)、&(按位與)、<<(左移)、 >>(右移)、 >>>(右移,零填充)。
單目運算符:
-(取反)、~(取補)、++(遞加1)、--(遞減1)。
(2)比較運算符
  比較運算符它的基本操作過程是,首先對它的操作數進行比較,爾后再返回一個true或False值,有8個比較運算符:
<(小于)、>(大于)、<=(小于等于)、>=(大于等于)、==(等于)、!=(不等于)。
(3)布爾邏輯運算符
  在JavaScript中增加了幾個布爾邏輯運算符:
!(取反)、&=(與之后賦值)、 &(邏輯與)、 |=(或之后賦值)、 |(邏輯或)、 ^=(異或之后賦值)、 ^(邏輯異或)、 ?:(三目操作符)、||(或)、==(等于)、|=(不等于)。
  其中三目操作符主要格式如下:
操作數?結果1:結果2
  若操作數的結果為真,則表述式的結果為結果1,否則為結果2。
  四、范例
  下面是一個跑馬燈效果的JavaScript文檔。
Test2_1.html
<html>
<head>
<script Language="JavaScript">
var msg="這是一個跑馬燈效果的JavaScript文檔";
var interval = 100;
var spacelen = 120;
var space10=" ";
var seq=0;
function Scroll() {
len = msg.length;
window.status = msg.substring(0, seq+1);
seq++;
if ( seq >= len ) {
??seq = spacelen;
??window.setTimeout("Scroll2();", interval );
}
else
??window.setTimeout("Scroll();", interval );
}
function Scroll2() {
var out="";
for (i=1; i<=spacelen/space10.length; i++)
??out +=
space10;
out = out + msg;
len=out.length;
window.status=out.substring(seq, len);
seq++;
if ( seq >= len )
{
?? seq = 0;
??};
window.setTimeout("Scroll2();", interval );
}
Scroll();
</script>
<body>
</body>
</html>
  本文介紹了JavaScript腳本是如何加入Web頁面, 并學習了JavaScript語言中的基本數據類型、變量、常量、操作運算符等。可以看出,對于已經掌握C++語言的人來說,學習JavaScript真是一件非常輕松愉快的事。
JavaScript程序構成

  JavaScript腳本語言的基本構成是由控制語句、函數、對象、方法、屬性等,來實現編程的。
一、程序控制流
  在任何一種語言中,程序控制流是必須的,它能使得整個程序減小混亂,使之順利按其一定的方式執行。下面是JavaScript常用的程序控制流結構及語句:
1、if條件語句
 基本格式
if(表述式)
語句段1;
......
else
語句段2;
.....
 功能:若表達式為true,則執行語句段1;否則執行語句段2。
 說明:
if -else 語句是JavaScript中最基本的控制語句,通過它可以改變語句的執行順序。
表達式中必須使用關系語句,來實現判斷,它是作為一個布爾值來估算的。
它將零和非零的數分別轉化成false和true。
若if后的語句有多行,則必須使用花括號將其括起來。
 
if語句的嵌套
if(布爾值)語句1;
else(布爾值)語句2;
else if(布爾值)語句3;
……
else 語句4;
 
在這種情況下,每一級的布爾表述式都會被計算,若為真,則執行其相應的語句,否則執行else后的語句。
 
2、For循環語句
 基本格式
for(初始化;條件;增量)
語句集;
 功能:實現條件循環,當條件成立時,執行語句集,否則跳出循環體。
 說明:
初始化參數告訴循環的開始位置,必須賦予變量的初值;
條件:是用于判別循環停止時的條件。若條件滿足,則執行循環體,否則 跳出。
增量:主要定義循環控制變量在每次循環時按什么方式變化。
三個主要語句之間,必須使用逗號分隔。
 
3、while循環
 基本格式
while(條件)
語句集;
該語句與For語句一樣,當條件為真時,重復循環,否則退出循環。
 For與while語句
  兩種語句都是循環語句,使用For語句在處理有關數字時更易看懂,也較緊湊;而while循環對復雜的語句效果更特別。
4、break和continue語句
  與C++語言相同,使用break語句使得循環從For或while中跳出,continue使得跳過循環內剩余的語句而進入下一次循環。
二、函數
  函數為程序設計人員提供了一個豐常方便的能力。通常在進行一個復雜的程序設計時,總是根據所要完成的功能,將程序劃分為一些相對獨立的部分,每部分編寫一個函數。從而,使各部分充分獨立,任務單一,程序清晰,易懂、易讀、易維護。JavaScript函數可以封裝那些在程序中可能要多次用到的模塊。并可作為事件驅動的結果而調用的程序。從而實現一個函數把它與事件驅動相關聯。這是與其它語言不樣的地方。
1、JavaScript函數定義
Function 函數名 (參數,變元){
函數體;.
Return 表達式;
}
說明:
 當調用函數時,所用變量或字面量均可作為變元傳遞。
 函數由關鍵字Function定義。
 函數名:定義自己函數的名字。
 參數表,是傳遞給函數使用或操作的值,其值可以是常量 ,變量或其它表達式。
 通過指定函數名(實參)來調用一個函數。
 必須使用Return將值返回。
 函數名對大小寫是敏感的。
 
2、函數中的形式參數:
  在函數的定義中,我們看到函數名后有參數表,這些參數變量可能是一個或幾個。那么怎樣才能確定參數變量的個數呢?在JavaScript中可通過arguments .Length來檢查參數的個數。
例:
Function function_Name(exp1,exp2,exp3,exp4)
Number =function _Name . arguments .length;
if (Number>1)
document.wrile(exp2);
if (Number>2)
document.write(exp3);
if(Number>3)
document.write(exp4);
...
三、事件驅動及事件處理
1、基本概念
  JavaScript是基于對象(object-based)的語言。這與Java不同,Java是面向對象的語言。而基于對象的基本特征,就是采用事件驅動(event-driven)。它是在用形界面的環境下,使得一切輸入變化簡單化。通常鼠標或熱鍵的動作我們稱之為事件(Event),而由鼠標或熱鍵引發的一連串程序的動作,稱之為事件驅動(Event Driver)。而對事件進行處理程序或函數,我們稱之為事件處理程序(Event Handler)。
2、事件處理程序
  在JavaScript中對象事件的處理通常由函數(Function)擔任。其基本格式與函數全部一樣,可以將前面所介紹的所有函數作為事件處理程序。
格式如下:
Function 事件處理名(參數表){
事件處理語句集;
……
}
3、事件驅動
  JavaScript事件驅動中的事件是通過鼠標或熱鍵的動作引發的。它主要有以下幾個事件:
(1)單擊事件onClick
  當用戶單擊鼠標按鈕時,產生onClick事件。同時onClick指定的事件處理程序或代碼將被調用執行。通常在下列基本對象中產生:
button(按鈕對象)
checkbox(復選框)或(檢查列表框)
radio (單選鈕)
reset buttons(重要按鈕)
submit buttons(提交按鈕)
例:可通過下列按鈕激活change()文件:
<Form>
<Input type="button" Value=“ ” >
</Form>
  在onClick等號后,可以使用自己編寫的函數作為事件處理程序,也可以使用JavaScript中內部的函數。還可以直接使用JavaScript的代碼等。例:
<Input type="button" value=" " ("這是一個例子");
(2)onChange改變事件
  當利用text或texturea元素輸入字符值改變時發該事件,同時當在select表格項中一個選項狀態改變后也會引發該事件。
例:
<Form>
<Input type="text" name="Test" value="Test" >
</Form>
(3)選中事件onSelect
  當Text或Textarea對象中的文字被加亮后,引發該事件。
(4)獲得焦點事件onFocus
  當用戶單擊Text或textarea以及select對象時,產生該事件。此時該對象成為前臺對象。
(5)失去焦點onBlur
  當text對象或textarea對象以及select對象不再擁有焦點、而退到后臺時,引發該文件,他與onFocas事件是一個對應的關系。
(6)載入文件onLoad
  當文檔載入時,產生該事件。onLoad一個作用就是在首次載入一個文檔時檢測cookie的值,并用一個變量為其賦值,使它可以被源代碼使用。
(7)卸載文件onUnload
  當Web頁面退出時引發onUnload事件,并可更新Cookie的狀態。 四、范例
  范例1:下例程序是一個自動裝載和自動卸載的例子。即當裝入HTML文檔時調用loadform()函數,而退出該文檔進入另一HTML文檔時則首先調用unloadform()函數,確認后方可進入。
test3_1.htm
<HTML>
<HEAD>
<script Language="JavaScript">
<!--
function loadform(){
alert("這是一個自動裝載例子!");
}
function unloadform(){
alert("這是一個卸載例子!");
}
//-->
</Script>
</HEAD>
<BODY??>
<a href="test.htm">調用</a>
</BODY>
</HTML>
 
范例2:這是一個獲取瀏覽器版本號的程序。該程序首先顯示一個波浪一提示信息。之后顯示瀏覽器的版本號有關信息。
test3_2.htm
<html>
<head>
<script language="JavaScript"><!--
// -->
function makeArray(n){
this.length=n
return this
}
function hexfromdec(num) {
hex=new makeArray(1);
var hexstring="";
var shifthex=16;
var temp1=num;
for(x=1; x>=0; x--) {
hex[x]=Math.round(temp1/shifthex - .5);
hex[x-1]=temp1 - hex[x] * shifthex;
temp1=hex[x-1];
shifthex /= 16;
}
for (x=1; x>=0; x--) { hexstring+=getletter(hex[x]); }
return (hexstring);
}
 
function getletter(num) {
if (num < 10) { return num; }
else {
if (num == 10) { return "A" }
if (num == 11) { return "B" }
if (num == 12) { return "C" }
if (num == 13) { return "D" }
if (num == 14) { return "E" }
if (num == 15) { return "F" }
}
}
function rainbow(text){
var color_d1;
var allstring="";
for(i=0;i<text.length;i=i+2){
color_d1=255*Math.sin(i/(text.length/3));
color_h1=hexfromdec(color_d1);
allstring+="<FONT COLOR="+color_h1+"ff"+color_h1+">"+text.substring(i,i+2)+"</FONT>";
}
return allstring;
}
 
function sizefont(text){
var color_d1;
var allstring="";
var flag=0;
for(i=0,j=0;i<text.length;i=i+1){
if (flag==0) {
j++;
if (j>=7) {
flag=1;}}
if (flag==1) {
j=j-1;
if (j<=0) {
flag=0; }}
allstring+="<FONT SIZE="+ j + ">" + text.substring(i,i+1) + "</FONT>";
}
return allstring;
}
document.write("<font size=8><CENTER>")
document.write("<BR><BR>")
document.write( sizefont("這是一個獲取WEB瀏覽器的程序"))
document.write("</CENTER></font>")
document.write("瀏覽器名稱: "+navigator.appName+"<br>");
document.write("版本號: "+navigator.appVersion+"<br>");
document.write("代碼名字: "+navigator.appCodeName+"<br>");
document.write("用戶代理標識: "+navigator.userAgent);
</script>
<body>
</body>
</html>
輸出結果圖1所示。
圖1
  本講介紹了JavaScript程序設計的有關內容。程序流、函數、事件是我們學習掌握JavaScript編程的重點。
基于對象的JavaScript語言
  JavaScript語言是基于對象的(Object-Based),而不是面向對象的(object-oriented)。之所以說它是一門基于對象的語言,主要是因為它沒有提供象抽象、繼承、重載等有關面向對象語言的許多功能。而是把其它語言所創建的復雜對象統一起來,從而形成一個非常強大的對象系統。
    雖然JavaScript語言是一門基于對象的,但它還是具有一些面向對象的基本特征。它可以根據需要創建自己的對象,從而進一步擴大JavaScript的應用范圍,增強編寫功能強大的Web文檔。
一、對象的基礎知識
1、對象的基本結構
  JavaScript中的對象是由屬性(properties)和方法(methods)兩個基本的元素的構成的。前者是對象在實施其所需要行為的過程中,實現信息的裝載單位,從而與變量相關聯;后者是指對象能夠按照設計者的意圖而被執行,從而與特定的函數相聯。
2、引用對象的途徑
  一個對象要真正地被使用,可采用以下幾種方式獲得:
  o 引用JavaScript內部對象;
  o 由瀏覽器環境中提供;
  o 創建新對象。
  這就是說一個對象在被引用之前,這個對象必須存在,否則引用將毫無意義,而出現錯誤信息。從上面中我們可以看出JavaScript引用對象可通過三種方式獲取。要么創建新的對象,要么利用現存的對象。
3、有關對象操作語句
  JavaScript不是一純面向對象的語言,它設有提供面向對象語言的許多功能,因此JavaScript設計者之所以把它你“基于對象”而不是面向對象的語言,在JavaScript中提供了幾個用于操作對象的語句和關鍵字及運算符。
(1) For...in語句
格式如下:
For(對象屬性名 in 已知對象名)
說明:
o 該語句的功能是用于對已知對象的所有屬性進行操作的控制循環。它是將一個已知對象的所有屬性反復置給一個變量;而不是使用計數器來實現的。
o 該語句的優點就是無需知道對象中屬性的個數即可進行操作。
例:下列函數是顯示數組中的內容:
Function showData(object)
for (var X=0; X<30;X++)
document.write(object)
該函數是通過數組下標順序值,來訪問每個對象的屬性,使用這種方式首先必須知道數組的下標值,否則若超出范圍,則就會發生錯誤。而使For...in語句,則根本不需要知道對象屬性的個數,見下:
Function showData(object)
for(var prop in object)
document.write(object[prop]);
使用該函數時,在循環體中,For自動將的屬性取出來,直到最后為此。
(2) with語句
使用該語句的意思是:在該語句體內,任何對變量的引用被認為是這個對象的屬性,以節省一些代碼。
with object{
...}
所有在with語句后的花括號中的語句,都是在后面object對象的作用域的。
(3) this關鍵字
this是對當前的引用,在JavaScript由于對象的引用是多層次,多方位的,往往一個對象的引用又需要對另一個對象的引用,而另一個對象有可能又要引用另一個對象,這樣有可能造成混亂,最后自己已不知道現在引用的那一個對象,為此JavaScript提供了一個用于將對象指定當前對象的語句this。
(4) New運算符
雖然在JavaScript中對象的功能已經是非常強大的了。但更強大的是設計人員可以按照需求來創建自己的對象,以滿足某一特定的要求。使用New運算符可以創建一個新的對象。其創建對象使用如下格式:
Newobject=NEW Object(Parameters table);
其中Newobject創建的新對象:object是已經存在的對象; parameters table參數表;new是JavaScript中的命令語句。
如創建一個日期新對象
newData=New Data()
birthday=New Data (December 12.1998)
之后就可使NewData、birthday作為一個新的日期對象了。
 
4、對象屬性的引用
  對象屬性的引用可由下列三種方式之一實現:
(1)使用點(.)運算符
university.Name=“云南省”
university.city=“昆明市”
university.Date="1999"
其中university是一個已經存在的對象,Name、City、Date是它的三個屬性,并通過操作對其賦值。
(2)通過對象的下標實現引用
university[0]=“云南”
university[1]=“昆明市”
university[2]="1999"
通過數組形式的訪問屬性,可以使用循環操作獲取其值。
function showunievsity(object)
for (var j=0;j<2; j++)
document.write(object[j])
若采用For...in則可以不知其屬性的個數后就可以實現:
Function showmy(object)
for (var prop in this)
docament.write(this[prop]);
(3)通過字符串的形式實現
university["Name"]=“云南”
university["City"]=“昆明市”
university["Date"]="1999"

5、對象的方法的引用
在JavaScript中對象方法的引用是非常簡單的。
ObjectName.methods()
實際上methods()=FunctionName方法實質上是一個函數。 如引用university對象中的showmy()方法,則可使用:
document.write (university.showmy())
或:document.write(university)
如引用math內部對象中cos()的方法
則:
with(math)
document.write(cos(35));
document.write(cos(80));
若不使用with則引用時相對要復雜些:
document.write(Math.cos(35))
document.write(math.sin(80))
二、常用對象的屬性和方法
  JavaScript為我們提供了一些非常有用的常用內部對象和方法。用戶不需要用腳本來實現這些功能。這正是基于對象編程的真正目的。
  在JavaScript提供了string(字符串)、math(數值計算)和Date(日期)三種對象和其它一些相關的方法。從而為編程人員快速開發強大的腳本程序提供了非常有利的條件。
1、常用內部對象
  在JavaScript中對于對象屬性與方法的引用,有兩種情況:其一是說該對象是靜態對象,即在引用該對象的屬性或方法時不需要為它創建實例;而另一種對象則在引用它的對象或方法是必須為它創建一個實例,即該對象是動態對象。
  對JavaScript內部對象的引用,以是緊緊圍繞著它的屬性與方法進行的。因而明確對象的靜動性對于掌握和理解JavaScript內部對象是具有非常重要的意義。
1)、串對象
  o string對象:內部靜態性。
  o 訪問properties和methods時,可使用(.)運算符實現。
  o 基本使用格式:objectName.prop/methods
(1)串對象的屬性
  該對象只有一個屬性,即length。它表明了字符串中的字符個數,包括所有符號。
例:
mytest="This is a JavaScript"
mystringlength=mytest.length
  最后mystringlength返回mytest字串的長度為20。
(2)串對象的方法
  string對象的方法共有19個。主要用于有關字符串在Web頁面中的顯示、字體大小、字體顏色、字符的搜索以及字符的大小寫轉換。
其主要方法如下:
  o 錨點anchor():該方法創建如用Html文檔中一樣的anchor標記。使用anchor如用Html中(A Name="")一樣。通過下列格式訪問:string.anchor(anchorName)。
  o 有關字符顯示的控制方法
big字體顯示, Italics()斜體字顯示,bold()粗體字顯示,blink()字符閃爍顯示,small()字符用小體字顯示,fixed()固定高亮字顯示、fontsize(size)控制字體大小等。
  o 字體顏色方法;fontcolor(color)
  o 字符串大小寫轉換
toLowerCase()-小寫轉換,toUpperCase()大寫轉換。下列把一個給定的串分別轉換成大寫和小寫格式:
string=stringValue.toUpperCase和string=stringValue.toLowerCase。
  o 字符搜索:indexOf[charactor,fromIndex]
從指定formIndtx位置開始搜索charactor第一次出現的位置。
返回字串的一部分字串:substring(start,end)
從start開始到end的字符全部返回。
 
2)、算術函數的math對象
 功能:提供除加、減、乘、除以外的一引些自述運算。如對數,平方根等 。
 靜動性:靜態對象
(1)主要屬性
  math中提供了6個屬性,它們是數學中經常用到的常數E、以10為底的自然對數LN10、以2為底的自然對數LN2、3.14159的PI、1/2的平方根SQRT1-2,2的平方根為SQRT2。
(2)主要方法
 絕對值:abs()
 正弦余弦值:sin(),cos()
 反正弦反余弦 :asin(), acos()
 正切反正切:tan(),atan()
 四舍五入:round()
 平方根:sqrt()
 基于幾方次的值:Pow(base,exponent)
...
3)、日期及時間對象
 功能:提供一個有關日期和時間的對象。
 靜動性:動態性,即必須使用New運算符創建一個實例。例:
MyDate=New Date()
Date對象沒有提供直接訪問的屬性。只具有獲取和設置日期和時間的方法。
 日期起始值:1770年1月1日00:00:00。
1. 獲取日期的時間方法
 getYear(): 返回年數
 getMonth():返回當月號數
 getDate(): 返回當日號數
 getDay():返回星期幾
 getHours():返回小時數
 getMintes(:返回分鐘數
 getSeconds():返回秒數
 getTime() : 返回毫秒數
(2)設置日期和時間:
 setYear();設置年
 setDate():設置當月號數
 setMonth():設置當月份數
 setHours():設置小時數
 setMintes():設置分鐘數
 setSeconds():設置秒數
 setTime ():設置毫秒數
...
2、JavaScript中的系統函數
  JavaScript中的系統函數又稱內部方法。它提供了與任何對象無關的系統函數,使用這些函數不需創建任何實例,可直接用。
1.返回字符串表達式中的值:
 方法名:eval(字串表達式),例:
test=eval("8+9+5/2");
2. 返回字符串ASCI碼:
 方法名:unEscape (string)
3.返回字符的編碼:
 方法名:escape(character)
4.返回實數:
parseFloat(floustring);
5.返回不同進制的數:
parseInt(numbestring ,rad.X)
其中radix是數的進制,numbs字符串數

三、范例
下面是一個時鐘顯示的JavaScript文檔。在文檔中用了非常多的函數。
Test4_1.htm
<html>
<head>
<style TYPE="text/css">
<style>
</style>
<title>時鐘</title>
<script LANGUAGE="JavaScript">
function showClock() {
}
function hideClock() {
}
var timerID = null
var timerRunning = false
function stopClock() {
if(timerRunning)
clearTimeout(timerID);
timerRunning = false
document.clock.face.value = "";
}
function showTime() {
var now = new Date();
var year = now.getYear();
var month = now.getMonth() + 1;
var date = now.getDate();
var hours = now.getHours();
var mins = now.getMinutes();
var secs = now.getSeconds();
var timeVal = "";
timeVal += ((hours <= 12) ? hours : hours - 12);
timeVal += ((mins < 10) ? ":0" : ":") + mins;
timeVal += ((secs <= 10) ? ":0" : ":") + secs;
timeVal += ((hours < 12) ? "AM" : "PM");
timeVal += ((month < 10) ? " on 0" : " on ") + month + "-";
timeVal += date + "-" + year;
document.clock.face.value = timeVal;
timerID = setTimeout("showTime()", 1000);
timerRunning = true
}
function startClock() {
stopClock();
showTime();
}
 
function windowOpener( indexnum ){
var loadpos="date.html"+"#"+indexnum;
c.open(loadpos,"date","toolbar=no,location=no,
directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,
width=620,height=400");
}
</script>
</head>
<body??>
<p align="center"><big><span style="background-color: rgb(45,45,45)">
<font face="Arial">form</font>?? <font face="宋體">時鐘</font>
</span></big></p>
<p align="center"> </p>
<div align="center"><center>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="100%"><form NAME="clock" >
<div align="center"><center><p><input TYPE="text" NAME="face" size="20"
VALUE style="background-color: rgb(192,192,192)"> </p>
</center></div>
</form>
</td>
</tr>
</table>
</center></div>
</body>
</html>
  本講介紹了基于對象的JavaScript中常用內部對象屬性、方法的使用。
在JavaScript中創建新對象
  使用JavaScript可以創建自己的對象。雖然JavaScript內部和瀏覽器本身的功能已十分強大,但JavaScript還是提供了創建一個新對象的方法。使其不必像超文本標識語言那樣,求于或其它多媒體工具,就能完成許多復雜的工作。
  在JavaScript中創建一個新的對象是十分簡單的。首先它必須定義一個對象,而后再為該對象創建一個實例。這個實例就是一個新對象,它具有對象定義中的基本特征。
一、對象的定義
JavaScript對象的定義,其基本格式如下:
Function Object(屬性表)
This.prop1=prop1
This.prop2=prop2
...
This.meth=FunctionName1;
This.meth=FunctionName2;
...
在一個對象的定義中,可以為該對象指明其屬性和方法。通過屬性和方法構成了一個對象的實例。如以下是一個關于University對象的定義:
Function university(name,city,creatDate URL)
This.name=name
This.city=city
This.creatDate=New Date(creatDate)
This.URL=URL
其基本含義如下:
Name-指定一個“單位”名稱。  
City-“單位”所在城市。  
CreatDate-記載university對象的更新日期。  
URL-該對象指向一個網址。
二、創建對象實例
一旦對象定義完成后,就可以為該對象創建一個實例了:
NewObject=New object();
其中Newobjet是新的對象,Object已經定義好的對象。例:
U1=New university(“云南省”,“昆明市”,"January 05,199712:00:00","http://www.YN.KM")
U2=New university(“云南電子科技大學”,“昆明”,"January 07,1997 12:00:00","htlp://www.YNKJ.CN")
 
三、對象方法的使用
在對象中除了使用屬性外,有時還需要使用方法。在對象的定義中,我們看到This.meth=FunctionName語句,那就是為定義對象的方法。實質對象的方法就是一個函數FunctionName,通過它實現自己的意圖。
例在university對象中增加一個方法,該方法是顯示它自己本身,并返回相應的字串。
function university(name,city,createDate,URL)
This.Name=Name;
This.city=city;
This.createDate=New Date(creatDate);
This.URL=URL;
This.showuniversity=showuniversity;
其中This.showuniversity就是定義了一個方法---showuniversity()。
而showuniversity()方法是實現university對象本身的顯示。
function showuniversity()
For (var prop in this)
alert(prop+="+this[prop]+"");
其中alert是JavaScript中的內部函數,顯示其字符串。
四、JavaScript中的數組 
使用New創建數組
JavaScript中沒有提供像其它語言具有明顯的數組類型,但可以通過function定義一個數組,并使用New對象操作符創建一個具有下標的數組。從而可以實現任何數據類型的存儲。
a、定義對象的數組
Function arrayName(size){
This.length=Size;
for(var X=; X<=size;X++)
this[X]=0;
Reture this;
}
其中arrayName是定義數組的一個名子,Size是有關數組大小的值(1-size),即數組元素的個數。通過for循環對一個當前對象的數組進行定義,最后返回這個數組。
從中可以看出,JavaScript中的數組是從1到size,這與其它0到size的數組表示方法有所不同,當然你可根據需要將數組的下標由1到size調整到0到size-1,可由下列實現:
Function arrayName (size)
For (var X=0; X<=size;X++)
this[X]=0;
this.lenght=size;
Return this;
從上面可以看出該方法是只是調整了this.lenght的位置,該位置是用于存儲數組的大小的。從而調整后的數組的下標將與其它語言一致。但請讀者注意正是由于數組下標順序由1到size,使得JavaScript中的對象功能更加強大。
b、創建數組實例
一個數組定義完成以后,還不能馬上使用,必須為該數組創建一個數組實例:
Myarray=New arrayName(n);
并賦于初值:
Myarray[1]=“字串1”;
Myarray[2]=“字串2”;
Myarray[3]=“字串3”;
...
Myarray[n]=“字串n”;
一旦給數組賦于了初值后,數組中就具有真正意義的數據了,以后就可以在程序設計過程中直接引用。
創建多維數組
Function creatMArray(row,col){
var indx=0;
this.length=(row*10)+col
for(var x=1;x<=row;x++)
for(var y=1;y<=col;y++)
indx=(x*10)+y;
this[indx]=””;
}
myMArray=new creatMArray();
之后可通過myMArray[11]、myMArray[12]、myMArray[13]、myMArray[21]、myMArray[22]、myMArray[23]、
…來引用。
內部數組
在Java中為了方便內部對象的操作,可以使用窗體(Forms)、框架(Frames)、元素(element)、鏈接(links)和錨(Anchors)數組實現對象的訪問。
 anchors[]:使用《A name=“anchorName“》標識來建立錨的鏈接。
 links[]: 使用<A href=http://www.cnblogs.com/”URL”>來定義一個越文本鏈接項。
 Forms[]: 在程序中使用多窗體時,建立該數組。
 Elements[]:在一個窗口中使用從個元素時,建立該數組。
 Frames[]:建立框架時,使用該數組
 anchors[]用于窗體的訪問(它是通過《form name=“form1”》所指定的),link[]用于被鏈接到的錨點的訪問(它是通過《a href=http://www.cnblogs.com/URL》所指定的)。Forms[]反映窗體的屬性,而anchors[]反映Web頁面中的鏈接屬性。
有關錨數組的文檔:
<HTML>
<HEAD>
<BODY>
<A NAME=”MyAnchorsName1”> 定義第一個錨名
HTML Code
<A NAME=”MyAnchorsName2”> 定義第二個錨名
HTML Code
<A HREF=http://www.cnblogs.com/”#MyAnchorsName1”>建立錨的鏈接
<A HREF=http://www.webjx.com/htmldata/2005-02-26/”#MyAnchorsName2?gt; 建立錨的鏈接
….
該文檔段建立了兩面全錨的鏈接,可通過Anchors[]訪問這些錨。document.Anchors[0]反映第一個錨,而document.Anchors[1]反映第二個錨的有關信息。
五、范例
范例1:一個動態文字滾動的例子。
test5_1.htm
<html>
<head>
<title></title>
<script LANGUAGE="JavaScript">
 
with (top.window.location)
{baseURL = href.substring (0,href.lastIndexOf ("/") + 1)}
total_toc_items = 0;
current_overID = "";
last_overID = "";
browser = navigator.appName;
version = parseInt(navigator.appVersion);
client=null;
loaded = 0;
if (browser == "Netscape" && version >= 3) client = "ns3";
function toc_item (img_name,icon_col,width,height) {
if (client =="ns3") {
img_prefix = baseURL + img_name;
this.icon_col = icon_col;
this.toc_img_off = new Image (width,height);
this.toc_img_off.src = img_prefix + "_off.gif";
this.toc_img_on = new Image (width,height);
this.toc_img_on.src = img_prefix + "_on.gif";
}
}
 
function new_toc_item (img_name,icon_row,width,height) {
toc_item [img_name] = new toc_item (img_name,icon_row,width,height);
}
 
function toc_mouseover (itemID) {
if (client =="ns3") {
current_overID = itemID;
if (current_overID != last_overID) {
document [current_overID].src = toc_item [current_overID].toc_img_on.src;
if (last_overID != "") {
document.images [last_overID].src = toc_item[last_overID].toc_img_off.src;
}
last_overID = current_overID;
}
}
}
 
function toc_mouseout () {
if (client =="ns3") {
if (current_overID != "") {
document.images [current_overID].src = toc_item [current_overID].toc_img_off.src;
}
current_overID = "";
last_overID = "";
}
}
new_toc_item ("1",2,120,20);
<!-- Begin
function bannerObject(p){
this.msg = MESSAGE
this.out = " "
this.pos = POSITION
this.delay = DELAY
this.i = 0
this.reset = clearMessage}
 
function clearMessage(){
this.pos = POSITION}
var POSITION = 50;
var DELAY = 150;
var MESSAGE = "這是一個動態JavaScript文字顯示的例子";
var scroll = new bannerObject();
function scroller(){
scroll.out += " ";
if(scroll.pos>0)
for (scroll.i = 0; scroll.i < scroll.pos; scroll.i++) { scroll.out +=" " ; }
if (scroll.pos>= 0)
scroll.out += scroll.msg
else
scroll.out = scroll.msg.substring(-scroll.pos,scroll.msg.length)
document.noticeForm.notice.value = scroll.out
scroll.out = " ";
scroll.pos--;
scroll.pos--;
if (scroll.pos < -(scroll.msg.length)) { scroll.reset(); } setTimeout
('scroller()',scroll.delay);}
</script>
</head>
<body??bgcolor="#000000" on" UnitName="C" SourceValue="0" HasSpace="False" Negative="False" NumberType="1" TCSC="0">0C0C0" on" UnitName="C" SourceValue="0" HasSpace="False" Negative="False" NumberType="1" TCSC="0">0C0C0"
alink="#008080"
on" UnitName="C" SourceValue="0" HasSpace="False" Negative="False" NumberType="1" TCSC="0">0C0C0">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="100%"><form NAME="noticeForm">
<p><input TYPE="text" name="notice" size="40" style="background-color: rgb(192,192,192)"></p>
</form>
</td>
</tr>
</table>
</center></div>
</body>
</html>
 
范例2:顏色變化的例子。
test5_2.htm
<html>
<head>
<script>
<!--
function makearray(n) {
this.length = n;
for(var i = 1; i <= n; i++)
this = 0;
return this;}
hexa = new makearray(16);
for(var i = 0; i < 10; i++)
hexa = i;
hexa[10]="a";
hexa[11]="b";
hexa[12]="c";
hexa[13]="d";
hexa[14]="e";
hexa[15]="f";
function hex(i) {
if (i < 0)
return "00";
else if (i > 255)
return "ff";
else return "" + hexa[Math.floor(i/16)] + hexa;}
function setbgColor(r, g, b) {
var hr = hex(r);
var hg = hex(g);
var hb = hex(b);
document.bgColor = "#"+hr+hg+hb;}
function fade(sr, sg, sb, er, eg, eb, step) {
for(var i = 0; i <= step; i++) {
setbgColor( Math.floor(sr * ((step-i)/step) + er * (i/step)),
Math.floor(sg * ((step-i)/step) + eg * (i/step)), Math.floor(sb *
((step-i)/step) + eb * (i/step))); }}
function fadein() {
fade(255,0,0,0,0,255,100);
fade(0,0,255,0,255,0,100);
fade(0,255,0, 0,0,0, 100);}
fadein();
// -->
</script>
<body>
</body>
</html>
 
  本講介紹了用戶自行創建對象的方法, 用戶可根據需要創建自己的對象。并介紹了JavaScript中建數組的方法。
vJavaScript對象系統的使用   使用瀏覽器的內部對象系統, 可實現與HTML文檔進行交互。它的作用是將相關元素組織包裝起來,提供給程序設計人員使用,從而減輕編程人的勞動,提高設計Web頁面的能力。
一、瀏覽器對象層次及其主要作用
  除了前面提到過的文檔document對象外,Navigator瀏覽器中還提供了窗口(Window)對象以及歷史(History)和位置(Location)對象。
  瀏覽器對象(Navigator)
    提供有關瀏覽器的信息
  窗口對象(Windows)
    Window對象處于對象層次的最頂端,它提供了處理Navigator窗口的方法和屬性。
  位置對象(Location)
    Location對象提供了與當前打開的URL一起工作的方法和屬性,它是一個靜態的對象。
  歷史對象(History)
    History對象提供了與歷史清單有關的信息。
  文檔對象(Document)
    document對象包含了與文檔元素(elements)一起工作的對象,它將這些元素封裝起來供編程人員使用。
  編程人員利用這些對象,可以對WWW瀏覽器環境中的事件進行控制并作出處理。在JavaScript中提供了非常豐富的內部方法和屬性,從而減輕了編程人員的工作,提高編程效率。這正是基于對象與面向對象的根本區別所在。在這些對象系統中,文檔對象屬于非常重要的,它位于最低層,但對于我們實現Web頁面信息交互起作關鍵作用。因而它是對象系統的核心部分。
二、文檔對象功能及其作用
  在Navigator瀏覽器中,document文檔對象是核心是,同時也是最重要的。見表6-1所示。
LinksAnchor FormMethod Prop 鏈接對象錨對象窗體對象方法 對象


表6-1 document對象  從表6-1中可以看出,document對象的主要作用就是把這些基本的元素(如links,anchor等)包裝起來,提供給編程人員使用。從另一個角度看,document對象中又是由屬性和方法組成。
 
1、document中三個主要的對象
在document中主要有:links,anchor,form等三個最重要的對象:
(1)anchor錨對象:
anchor對象指的是<A Name=...> </A>標識在HTML源碼中存在時產生的對象。它包含著文檔中所有的anchors信息。
(2)鏈接links對象
  link對象指的是用<A Href=http://www.webjx.com/htmldata/2005-02-26/...> </A>標記的連接一個超文本或超媒體的元素作為一個特定的URL。
(3)窗體(Form)對象
  窗體對象是文檔對象的一個元素,它含有多種格式的對象儲存信息,使用它可以在JavaScript腳本中編寫程序進行文字輸入,并可以用來動態改變文檔的行為。通過document. Forms[]數組來使得在同一個頁面上可以有多個相同的窗體,使用forms[]數組要比使用窗體名字要方便得多。
例:下面就是一個使用窗體數組和窗體名字的例子。該程序使得兩個窗體中的字段內容保持一致。
Test6_1.htm
<Html>
<head>
</head>
<body>
<form >
<input type=text??>
</form>
<form NAME="my">
<input type=text >
</form>
</body>
</html>
  其中用了OnChnge事件(當窗體內容改變時激發)。第一個使用窗體名字標識my,第二個使用窗體數組Forms[]。其效果是一致。
 
2、文檔對象中的attribute屬性
  document對象中的attribute屬性,主要用于在引用Href標識時,控制著有關顏色的格式和有關文檔標題、文檔原文件的URL以及文檔最后更新的日期。這部分元素的主要含義如下:
(1)鏈接顏色:alinkcolor
這個元素主要用于,當選取一個鏈接時,鏈接對象本身的顏色就按alinkcolo r指定改變。
(2)鏈接顏色:linkcolor
當用戶使用<A Href=http://www.webjx.com/htmldata/2005-02-26/...> Text string </A>鏈接后,Textstring的顏色就會按Linkcolor所指定的顏色更新。
(3)瀏覽過后的顏色:VlinkColor
該屬性表示的是已被瀏覽存儲為已瀏覽過的鏈接顏色。
(4)背景顏色:bgcolor
該元素包含文檔背景的顏色。
(5)前景顏色:Fgcolor
該元素包含HTML文檔中文本的前景顏色。
 
3、文檔對象的基本元素
(1)窗體屬性:
  窗體屬性是與HTML文檔中<Form>...</Form>相對應的一組對象在HTML文檔所創建的窗體數,由length指定。通過document.forms.length反映該文檔中所創建的窗體數目。
(2)錨屬性:anchors
  該屬性中,包含了HTML文檔的所有<A> </A>標記為Name=...的語句標識。所有“錨”的數目保存在document.anchors.length中。
(3)鏈接屬性:links
  鏈接屬性是指在文檔中<A>...</A>的由Href=http://www.webjx.com/htmldata/2005-02-26/...指定的數目,其鏈接數目保存在document.links.length中。
三、范例
例1:下面我們通過一個例子來說明文檔對象的綜合應用。輸出結果見圖6-2所示。
Test6_2.htm
<html>
<head>
</HEAD>
<BOdy>
<Form Name="mytable">
請輸入數據:
<Input Type="text" Name="text1" Value="">
</Form>
<A name="Link1" href="test31.htm">鏈接到第一個文本</a><br>
<A name="Link2" href="test32.htm">鏈接到第二個文本</a><br>
<A name="Link2" href="test33.htm">鏈接到第三個文本</a><br>
<A href="#Link1">第一錨點</a>
<A href="#Link2">第二錨點</a>
<A Href="#Link3">第三錨點</a>
<BR>
<Script Language="JavaScript">
document.write("文檔有"+document.links.length+"個鏈接"+"<br>");
document.write("文檔有"+document.anchors.length+"個錨點"+"<br>");
document.write("文檔有"+document.forms.length+"個窗體");
</script>
</body>
</HTML>
圖6-2 
例子2:下列程序隨機產生每日一語。
test6_3.html
<HTML>
<HEAD>
<script Language="JavaScript">
<!--
tips = new Array(6);
tips[0]="每日一語(1)";
tips[1]="每日一語(2)";
tips[2]="每日一語(3)";
tips[3]="每日一語(4)";
tips[4]="每日一語(5)";
tips[5]="每日一語(6)";
index = Math.floor(Math.random() * tips.length);
document.write("<FONT SIZE=8 COLOR=DARKBLUE>" + tips[index]+"</FONT>");
</Script>
</HEAD>
</BODY>
</HTML>
輸出結果見圖6-3所示。
圖6-3    本講主要介紹了JavaScript對象系統的使用方法,其中重點介紹了文檔對象及使用。
JavaScript窗口及輸入輸出   JavaScript是基于對象的腳本編程語言,那么它的輸入輸出就是通過對象來完成的。其中有關輸入可通過窗口(Window)對象來完成,而輸出可通過文檔(document)對象的方法來實現。
一、窗口及輸入輸出
請看下面例子:
<HTML>
<Head>
<script languaga="JavaScript">
Var test=window.prompt("請輸入數據:");
document.write(test+"JavaScript輸入輸出的例子");
</script>
</Head>
</HTML>
  其中window.prompt()就是一個窗口對象的方法,其基本作用是,當裝入Web頁面時在屏幕上顯示一個具有“確定”和“取消”的對話框,讓你輸出數據。document.writle是一個文檔對象的方法,它的基本功能,是實現Web頁面的輸出顯示。見圖1所示。

圖1  
1、窗口對象
  該對象包括許多有用的屬性、方法和事件驅動程序,編程人員可以利用這些對象控制瀏覽器窗口顯示的各個方面,如對話框、框架等。在使用應注意以下幾點:
 該對象對應于HTML文檔中的<Body>和<FrameSet>兩種標識;
 onload和onunload都是窗口對象屬性;
 在JavaScript腳本中可直接引用窗口對象。如:
window.alert("窗口對象輸入方法")
可直接使用以下格式:
alert("窗口對象輸入方法")
 
2、窗口對象的事件驅動
  窗口對象主要有裝入Web文檔事件onload和卸載時onunload事件。用于文檔載入和停止載入時開始和停止更新文檔。
3、窗口對象的方法
  窗口對象的方法主要用來提供信息或輸入數據以及創建一個新的窗口。
  創建一個新窗口open()
使用window.open(參數表)方法可以創建一個新的窗口。其中參數表提供有窗口的主要特性和文檔及窗口的命名。
  具有OK按鈕的對話框
alert()方法能創建一個具有OK按鈕的對話框。
  具有OK和Cancel按鈕的對話框
confirm()方法為編程人員提供一個具有兩個按鈕的對話框。
  具有輸入信息的對話框
prompt()方法允許用戶在對話框中輸入信息,并可使用默認值,其基本格式如下prompt(“提示信息”,默認值)。
 
4、窗口對象中的屬性
  窗口對象中的屬性主要用來對瀏覽器中存在的各種窗口和框架的引用,其主要屬性有以下幾個:
(1)frames 確文檔中幀的數目
frames(幀)作為實現一個窗口的分隔操作,起到非常有用的作用,在使用注意以下幾點:
  frames屬性是通過HTML標識<Frames>的順序來引用的,它包含了一個窗口中的全部幀數。
  幀本身已是一類窗口,繼承了窗口對象所有的全部屬性和方法。
(2)Parent 指明當前窗口或幀的父窗口。
(3)defaultstatus:默認狀態,它的值顯示在窗口的狀態欄中。
(4)status:包含文檔窗口中幀中的當前信息。
(5)top:包括的是用以實現所有的下級窗口的窗口。
(6)window.指的是當前窗口
(7)self:引用當前窗口。
 
5、輸出流及文檔對象
  在JavaScript文檔對象中,提供了用于顯示關閉、消除、打開HTML頁面的輸出流。
(1)創建新文檔open()方法
  使用document.open()創建一個新的窗口或在指定的命令窗口內打開文檔。由于窗口對象是所加載的父對象,因而我們在調用它的屬性或方法時,不需要加入Window對象。例用Window. Open()與Open()是一樣的。
打開一個窗口的基本格式:

window屬性參數是由一個字符串列表項它由逗號分隔,它指明了有關新創建窗口的屬性。見表7-1所示。


 
在使用Open()方法時,需要注意以下點。
 通常瀏覽器窗中,總有一個文檔是打開的。因而不需要為輸出建立一個新文檔。
 在完成對Web文檔的寫操作后,要使用或調用close()方法來實現對輸出流的關閉。
 在使用open()來打開一個新流時,可為文檔指定一個有效的文檔類型,有效文檔類型包括text/HTML、text/gif、text/xim、text/plugin等。
(2)write()、writeln()輸出顯示。
該方法主要用來實現在Web頁面上顯示輸出信息。在實際使用中,需注意以下幾點:
 writeln()與write()唯一不同之處在于在未尾加了一個換符。
 為了正常顯示其輸出信息,必須指明<pre> </Pre>標記,使之告訴編輯器。
 輸出的文檔類型,可以由瀏覽器中的有效的合法文本類型所確定。
(3)關閉文檔流close()
在實現多個文檔對象中,必須使用close()來關閉一個對象后,才能打開另一個文檔對象。
(4)清除文檔內容clear()
使用該方法可清除已經打開文檔的內容。
二、簡單的輸入、輸出例子
  在JavaScript中可以非常方便地實現輸入輸出信息,并與用戶進行交互。
1、JavaScript信息的輸入
  通過使用JavaScript中所提供的窗口對象方法prompt(), 就能完成信息的輸入。該方法提供了最簡便的信息輸入方式,其基本格式如下:
Window.prompt("提示信", 預定輸入信息);
  此方法首先在瀏覽器窗口中彈出一個對話框, 讓用戶自行輸入信息。一旦輸入完成后,就返回用戶所輸入信息的值。例:
test=prompt(“請輸入數據:”,”this is a JavaScript”)
  實際上prompt()是窗口對象的一個方法。因為缺省情況下所用的對象就是window對象, 所以windows對象可以省略不寫。
 
2、輸出顯示
  每種語言,都必須提供信息數據的輸出顯示。JavaScript也是一樣,它提供有幾個用于信息輸出顯示的方法。比較常用的有window.alert()、document.write和及document.writln()方法。
1)、document.write()方法和document.writeln()方法
  document是JavaScript中的一個對象在它中封裝許多有用的方法,其中write()和writeln()就是用于將文本信息直接輸出到瀏覽器窗口中的方法。
document.write();
document.writeln();
說明:
 write()和writeln()方法都是用于向瀏覽器窗口輸出文本字串;
 二者的唯一區別就是writeln()方法自動在文本之后加入回車符。
 
2)、 window.alert()輸出
  在JavaScript為了方便信息輸出,JavaScript提供了具有獨立的對話框信息輸出─alert()方法。
alert()方法是window對象的一個方法,因此在使用時,不需要寫window窗口對象名,而是直接使用就行了。它主要用途用在輸出時產生有關警告提示信息或提示用戶,一旦用戶按“確定”鈕后,方可繼續執行其他腳本程序。例:
<HTML>
<HEAD>
<TITLE></TITLE>
</HEAD>
<BODY>
<Script Language ="JavaScript">
alert("這是一個JavaScript測試程序");
</Script>
</BODY>
</HTML>
 
3)、利用輸入、輸出方法實現交互
  在JavaScript中,可以利用prompt()方法和write()方法實現與Web頁面用戶進行交互。例下面就是一個有關實現交互的例子。
Test7_1.htm
<HTML>
<HEAD>
<TITLE></TITLE>
</HEAD>
<BODY>
<Script Language="JavaScript">
<!-- Hide From Other Browsers
document.write("<H1>有關交互的例子");
my=prompt("請輸入數據:");
document.write(my+"</H1>");
document.close();
// Stop Hiding from Other Browsers-->
</Script>
</BODY>
</HTML>
從上面程序可以看出:
 可通過write()和prompt()方法實現交互。
 在JavaScript腳本語言中可以使用HTML標識語言的代碼。從而實現混合編程。其中<H1>和<Br>就是HTML標識符。
三、范例
下列程序演示了你進入主頁所停留的時間。
test7_2.htm
<html>
<form name="myform">
<td vAlign="top" width="135">您在此停留了:
<input name="clock" size="8" value="在線時間"></td>
</form>
<script language="JavaScript">
var id, iM = 0, iS = 1;
start = new Date();
function go()
{
now = new Date();
time = (now.getTime() - start.getTime()) / 1000;
time = Math.floor( time);
iS = time % 60;
iM = Math.floor( time / 60);
if ( iS < 10)
document.myform.clock.value = " " + iM + " 分 0" + iS + " 秒";
else
document.myform.clock.value = " " + iM + " 分 " + iS + " 秒";
id = setTimeout( "go()", 1000);
}
go();
</script>
</body>
</html>
在瀏覽器中的結果,見圖2所示。
用JavaScript腳本實現Web頁面信息交互

  要實現動態交互,必須掌握有關窗體對象(Form)和框架對象(Frames)更為復雜的知識。
一、窗體基礎知識
  窗體對象可以使設計人員能用窗體中不同的元素與客戶機用戶相交互,而用不著在之前首先進行數據輸入,就可以實現動態改變Web文檔的行為。
1、什么是窗體對象
窗體(Form):它構成了Web頁面的基本元素。通常一個Web頁面有一個窗體或幾個窗體,使用Forms[]數組來實現不同窗體的訪問。
<form Name=Form1>
<INPUT type=text...>
<Input type=text...>
<Inpup byne=text...>
</form>
<form Name=Form2>
<INPUT type=text...>
<Input type=text...>
</form>
  在Forms[0]中共有三個基本元素,而Forms[1]中只有兩個元素。
  窗體對象最主要的功能就是能夠直接訪問HTML文檔中的窗體,它封裝了相關的HTML代碼:
<Form
Name ="表的名稱"
Target ="指定信息的提交窗口"
action ="接收窗體程序對應的URL"
Method =信息數據傳送方式(get/post)
enctype ="窗體編碼方式"
[onsubmit ="JavaScript代碼"]>
</Form>
 
2、窗體對象的方法
  窗體對象的方法只有一個--submit()方法,該方法主要功用就是實現窗體信息的提交。如提交Mytest窗體,則使用下列格式:
document.mytest.submit()
 
3、窗體對象的屬性
  窗體對象中的屬性主要包括以下:elements name action target encoding method.
  除Elements外,其它幾個均反映了窗體中標識中相應屬性的狀態,這通常是單個窗體標識;而elements常常是多個窗體元素值的數組,例:
elements[0].Mytable.elements[1]
 
4、訪問窗體對象
在JavaScript中訪問窗體對象可由兩種方法實現:
(1)通過訪問窗體
  在窗體對象的屬性中首先必須指定其窗體名,而后就可以通過下列標識訪問窗體如:document.Mytable()。
(2)通過數組來訪問窗體
  除了使用窗體名來訪問窗體外,還可以使用窗體對象數組來訪問窗體對象。但需要注意一點,因窗體對象是由瀏覽器環境的提供的,而瀏覽器環境所提供的數組下標是由0到n。所以可通過下列格式實現窗體對象的訪問:
document.forms[0]
document.forms[1]
document.forms[2]...
 
5、引用窗體的先決條件
  在JavaScript中要對窗體引用的條件是:必須先在頁面中用標識創建窗體,并將定義窗體部分放在引用之前。
二、窗體中的基本元素
窗體中的基本元素由按鈕、單選按鈕、復選按鈕、提交按鈕、重置按鈕、文本框等組成。
在JavaScript中要訪問這些基本元素,必須通過對應特定的窗體元素的數組下標或窗體元素名來實現。每一個元素主要是通過該元素的屬性或方法來引用。其引用的基本格式見下:
formName.elements[].methadName (窗體名.元素名或數組.方法)
formName.elemaent[].propertyName(窗體名.元素名或數組.屬性)
 
下面分別介紹:
 
1、Text單行單列輸入元素
 功能:對Text標識中的元素實施有效的控制。
 基本屬性:
Name:設定提交信息時的信息名稱。對應于HTML文檔中的Name。
Value:用以設定出現在窗口中對應HTML文檔中Value的信息。
defaultvalue:包括Text元素的默認值
 基本方法:
blur():將當前焦點移到后臺。
select():加亮文字。
 主要事件:
onFocus:當Text獲得焦點時,產生該事件。
OnBlur:從元素失去焦點時,產生該事件。
Onselect:當文字被加亮顯示后,產生該文件。
onchange:當Text元素值改變時,產生該文件。
例:...
<Form name="test">
<input type="text" name="test" value="this is a javascript" >
</form>
...
<script language ="Javascirpt">
document.mytest.value="that is a Javascript";
document.mytest.select();
document.mytest.blur();
</script>
 
2、textarea多行多列輸入元素
 功能:實施對Textarea中的元素進行控制。
 基本屬性
name:設定提交信息時的信息名稱,對應HTML文檔Textarea的Name。
Value:用以設定出現在窗口中對應HTML文檔中Value的信息。
Default value:元素的默認值。
 方法:
blur():將輸入焦點失去
select():將文字加亮后
 事件:
onBlur:當失去輸入焦點后產生該事件
onFocus:當輸入獲得焦點后,產生該文件
Onchange:當文字值改變時,產生該事件
Onselect:當文字加亮后,產生該文件
 
3、Select選擇元素
 功能:實施對滾動選擇元素的控制。
 屬性:
name:設定提交信息時的信息名稱,對應文檔select中的name。
Length:對應文檔select中的length
options:組成多個選項的數組
selectIndex;該下標指明一個選項
select在中每一選項都含有以下屬性:
Text:選項對應的文字
selected:指明當前選項是否被選中
Index:指明當前選項的位置
defaultselected:默認選項
 
 事件:
OnBlur:當select選項失去焦點時,產生該文件。
onFocas:當select獲得焦點時,產生該文件。
Onchange:選項狀態改變后,產生該事件。
 
4、Button按鈕
 功能:實施對Button按鈕的控制。
 屬性:
Name:設定提交信息時的信息名稱,對應文檔中button的Name。
Value:用以設定出現在窗口中對應HTML文檔中Value的信息。
 方法:
click()該方法類似于一個按下的按鈕。
 事件:
onclick當單擊button按鈕時,產生該事件。
例 :
<Form name="test">
<input type="button" name="testcall" ()>
</form>
...
<script language="javascirpt">
document.elements[0].value="mytest"; //通過元素訪問

document.testcallvalue="mytest"; // 通過名字訪問
</script>
.....
 
5、checkbox檢查框
 功能:實施對一個具有復選框中元素的控制。
 屬性:
name:設定提交信息時的信息名稱。
Value:用以設定出現在窗口中對應HTML文檔中Value的信息。
Checked:該屬性指明框的狀態true/false.
defauitchecked:默認狀態
 方法:
click()該方法使得框的某一個項被選中。
 事件:
onclick:當框的選被選中時,產生該事件。  
6、radio無線按鈕
 功能:實施對一個具單選功能的無線按鈕控制。
 屬性:
name:設定提交信息時的信息名稱,對應HTML文檔中的radio的name相同
value:用以設定出現在窗口中對應HTML文檔中Value的信息,對應HTML文檔中的radio的name。
length:單選按鈕中的按鈕數目。
defalechecked:默認按鈕。
checked:指明選中還是沒有選中。
index:選中的按鈕的位置。
 方法:
chick():選定一個按鈕。
 事件:
onclick:單擊按鈕時,產生該事件。
 
7、hidden:隱藏
 功能:實施對一個具有不顯示文字并能輸入字符的區域元素的控制。
 屬性:
name:設定提交信息時的信息名稱,對應HTML文檔的hidden中的Name。
Value:用以設定出現在窗口中對應HTML文檔中Value的信息,對應HTML文檔hidden中的value。
defaleitvalue:默認值
 
8、Password口令
 功能:實施對具有口令輸入的元素的控制。
 屬性:
Name:設定提交信息時的信息名稱,對應HTML文檔中password中的name。
Value:用以設定出現在窗口中對應HTML文檔中Value的信息,對應HTML文檔中password中的Value。
defaultvalu:默認值
 方法
select():加亮輸入口令域。
blur():使這丟失passward輸入焦點。
focus():獲得password輸入焦點。
 
9、submit提交元素
 功能:實施對一個具有提交功能按鈕的控制。
 屬性:
name:設定提交信息時的信息名稱,對應HTML文檔中submit。
Value:用以設定出現在窗口中對應HTML文檔中Value的信息,對應HTML文檔中value。
 方法
click()相當于按下submit按鈕。
 事件:
onclick()當按下該按鈕時,產生該事件。
三、范例
下面我們演示通過點擊一個按鈕(red)來改變窗口顏色,點擊“調用動態按鈕文檔”調用一個動態按鈕文檔。
test8_1.htm
<html>
<head>
<Script Language="JavaScript">
//原來的顏色
document.bgColor="blue";
document.vlinkColor="white";
document.linkColor="yellow";
document.alinkcolor="red";
//動態改變顏色
function changecolor(){
document.bgColor="red";
document.vlinkColor="blue";
document.linkColor="green";
document.alinkcolor="blue";
}
</script>
</HEAD>
<body bgColor="White" >
<A href=http://www.webjx.com/htmldata/2005-02-26/"test8_2.htm"> 調用動態按鈕文檔</a>
<form >
<Input type="button" Value="red" >
</form>
</BODY>
</HTML>
輸出結果見圖1所示。
圖1動態按鈕程序。
test8_2.htm
<HTML>
<HEAD>
</HEAD>
<p align="center"> </p>
<div align="center"><center>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="100%"><form name="form2" >
<p><input type="submit" name="banner" VALUE="Submit"
> <br>
<script language="JavaScript">
var id,pause=0,position=0;
function banner() {
// variables declaration
var i,k,;// increase msg
k=(30/msg.length)+1;
for(i=0;i<=k;i++) msg+=" "+msg;
// show it to the window
document.form2.banner.value=msg.substring(position,position-30);
// set new position
if(position++==msg.length) position=0;
// repeat at entered speed
id=setTimeout("banner()",60); }
// end -->
banner();
</script></p>
</form>
</td>
</tr>
</table>
</center></div>
<p> </p>
<BODY>
<A href=http://www.webjx.com/htmldata/2005-02-26/"test8_1.htm"> 返回</a>
</BODY>
</HTML>
輸出結果見圖2所示。
圖2  本講介紹了使用JavaScript腳本實現Web頁面信息交互的方法。其中主要介紹了窗體中的基本元素的主要功能和使用。
用JavaScript實現更復雜的交互
  一、什么是框架

  框架Frames最主要功用是"分割"視窗,使每個"小視窗"能顯示不同的HTM L文件,不同框架之間可以互動(interact),這就是說不同框架之間可以交換訊息與資料。例如:假設您開了兩個frames,第一個frame可顯示書的目錄,第二個frame則顯示章節的具體內容。
  框架可以將屏幕分割成不同的區域,每個區域有自己的URL,通過Frames[]數組對象來實現不同框架的訪問。實際上框架對象本身也一類窗口,它繼承了窗口對象的所有特征,并擁有所有的屬性和方法。下面我們先看一下框架的例子。見圖9-1所示。
圖9-1 框架對象<HTML>
<HEAD>
</HEAD>
<Frameset Rows="20%,80%">
<frame src="test9_1.html">
<Frameset Cols="50%,50%">
<frame src="test9_2.html">
<frame src="test9_3.html">
</Frameset>
</Frameset>
</HTML>
  以上HTML標識將屏幕分成三個框架。先將窗口分成以二行為單位的窗口,之后再按分成二個窗口。并在相應的框架中放入自己的HTML文檔。
  通過[Framset ]告訴瀏覽器您要設置幾個框架;rows這項參數告訴瀏覽器您想將視窗分割成幾列;而 cols這項參數是告訴瀏覽器您想將視窗分割成幾行。
  可以用很多組的 <frameset...> tags 將視窗分割得更復雜。
  可以給每個frame一個"名字" (name)。frame的名字在JavaScript語法中的地位非常重要。     可以用 <src> 告訴瀏覽器您要載入哪一個 HTML文件。
二、如何訪問框架
  在前面我們介紹過使用document.forms[]實現單一窗體中不同元素的訪問。而要實現框架中多窗體的不同元素的訪問,則必須使用window對象中的Frames屬性。Frames屬性同樣也是一個數組,他在  父框架集中為每一個子框架設有一項。通過下標實現不同框架的訪問:
parent.frames[Index1].docuement.forms
  通過parent.frames.length確定窗口中窗體的數目。 除了使用數組下標來訪問窗體外還可以使用框架名和窗體名來實現各元素的訪:
parent.framesName.decument.formNames.elementName.(m/p)
三、范例
  下面我們通過一個具體的實例, 來說明利用JavaScript腳本在WEB中實現更為復雜的信息交互。該例子是在一個多窗口中實現窗體信息的動態交互,在程序中首先在瀏覽器窗口中制作三個用于窗體交互的窗口,每個窗體窗口實現不同信息的動態交互。
  tset9.html為主調用文檔它首先將窗口劃分為具有二行的窗體,爾后再將第二行的窗體劃分為具有二列的窗體;
test9-1.html為顯示標題文檔;
test9_2.html為第二框架文檔其中需要注意的是:
通過JavaScript腳本將所示的“云南省”和“四川省”分別改為“昆明市”和“成都市”;
test7_3.html為第三框架文檔。
 主調文檔
主要作用是將窗口劃分為具有二行的窗體,爾后再將第二行的窗體劃分為具有二列的窗體。
Test9.htm
<HTML>
<HEAD>
</HEAD>
<Frameset Rows="10%,90%">
<frame src="test9_1.htm">
<Frameset Cols="40%,60%">
<frame src="test9_2.htm">
<frame src="test9_3.htm">
</Frameset>
</Frameset>
</HTML>
第一個框架
主要作用是顯示標題文檔。
Test9_1.htm
<HTML>
<HEAD>
</HEAD>
<H2>使用框架實現WEB交互</H2>
</HTML>
 
第二個框架
主要作用是實現交互。可以通過JavaScript腳本將所示的“云南省”和“四川省”分別改為“昆明市”和“成都市”。
Test9_2.htm
<HTML>
<HEAD>
</HEAD>
<Body>
<Form name="test9_1">
請選擇城市:<BR>
<Select name="select1" Multiple>
<Option>云南省
<Option>四川省
<Option>貴州省
<Option>山東省
<Option>江蘇省
<Option>浙江省
<Option>安徽省
<Option>河南省
</select><BR>
<HR>
<Input Type="Submit" name="" value="提交">
<Input Type="reset" name="" value="復位">
</Form>
<pre>
<script language="JavaScript">
document.test9_1.elements[0].options[0].text="昆明市";
document.test9_1.elements[0].options[1].text="成都市";
</script>
</pre>
</Body>
</HTML>
第三個框架
主要作用是實現交互。
Test9_3.htm
<HTML>
<HEAD>
</HEAD>
<Body>
<Form name="test9_2">
請輸入用戶名:
<Input Type="text" name="text1" Value="" Size=20><BR>
<HR>
請選擇:
<Input Type="Checkbox" name="checkbox1" Value="qb">全部信息<BR>
<Input Type="Checkbox" name="checkbox2" Value="bf">部分信息<BR>
<Input Type="Checkbox" name="checkbox3" Value="sy">所有城市<br>
<HR>
<Input Type="Submit" name="" value="提交">
<Input Type="reset" name="" value="復位">
<BR>
</Form>
<script language="JavaScript">
document.test9_2.elements[0].value="勞動和社會保障";
document.test9_2.elements[1].checked=true;
document.test9_2.elements[2].checked=true;
document.test9_2.elements[3].checked=false;
</script>
</Body>
</HTML>
  在瀏覽器中的結果見圖9-2所示。
圖 9-2 在瀏覽器中結果 
  本講介紹框架中的基本元素的主要功能和使用,利用JavaScript腳本可以非常方便、靈活地實現Web頁面更為復雜的信息交互,這是HTML標識語言所不能具備的。從中可以看出JavaScript是多么的吸引眾多的Web設計人員。

轉載于:https://www.cnblogs.com/freedom831215/archive/2009/10/03/1577594.html

總結

以上是生活随笔為你收集整理的JavaScript教程--从入门到精通的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

日韩精品久久久肉伦网站 | 亚洲va中文字幕无码久久不卡 | 在线精品国产一区二区三区 | 动漫av一区二区在线观看 | 97精品人妻一区二区三区香蕉 | 福利一区二区三区视频在线观看 | 亚洲中文字幕av在天堂 | 国产亚洲精品久久久久久国模美 | 午夜福利试看120秒体验区 | 国产色精品久久人妻 | 九九在线中文字幕无码 | 国产一区二区三区日韩精品 | 亚洲欧洲中文日韩av乱码 | 熟妇激情内射com | 奇米影视7777久久精品人人爽 | 粗大的内捧猛烈进出视频 | аⅴ资源天堂资源库在线 | 强伦人妻一区二区三区视频18 | 亚洲精品一区二区三区在线观看 | 成人三级无码视频在线观看 | 国产成人精品无码播放 | 中国女人内谢69xxxx | 亚洲熟妇色xxxxx亚洲 | 伦伦影院午夜理论片 | 国产无套粉嫩白浆在线 | 青青草原综合久久大伊人精品 | 麻豆国产丝袜白领秘书在线观看 | 无码帝国www无码专区色综合 | 成人精品视频一区二区 | 99久久久无码国产精品免费 | 一区二区三区高清视频一 | 久久久久av无码免费网 | 亚洲日韩av一区二区三区四区 | 亚洲人成影院在线无码按摩店 | 国产成人午夜福利在线播放 | 亚洲一区二区观看播放 | 中文字幕人妻无码一夲道 | 日韩人妻无码一区二区三区久久99 | 女人高潮内射99精品 | 国产莉萝无码av在线播放 | 国产三级精品三级男人的天堂 | 国产亚洲精品久久久闺蜜 | 久久伊人色av天堂九九小黄鸭 | www成人国产高清内射 | 久久综合久久自在自线精品自 | 国产成人精品优优av | 无码人妻精品一区二区三区下载 | 小泽玛莉亚一区二区视频在线 | 日韩精品成人一区二区三区 | 亚洲综合久久一区二区 | 欧美 日韩 亚洲 在线 | 在线播放亚洲第一字幕 | 久久久久久亚洲精品a片成人 | 欧洲vodafone精品性 | 青草视频在线播放 | 国产免费久久精品国产传媒 | 欧美一区二区三区视频在线观看 | 无码精品人妻一区二区三区av | 色综合天天综合狠狠爱 | 蜜臀aⅴ国产精品久久久国产老师 | 国产午夜无码精品免费看 | 粗大的内捧猛烈进出视频 | 天堂久久天堂av色综合 | 国产精品嫩草久久久久 | 狠狠综合久久久久综合网 | 日韩av无码一区二区三区 | 无码福利日韩神码福利片 | 国产极品视觉盛宴 | 丰满岳乱妇在线观看中字无码 | 亚洲天堂2017无码中文 | 成熟妇人a片免费看网站 | 国产精品久免费的黄网站 | 国产一区二区三区精品视频 | 亚洲熟妇色xxxxx欧美老妇y | 高潮毛片无遮挡高清免费视频 | 国产精品久免费的黄网站 | 日本熟妇浓毛 | 少妇性荡欲午夜性开放视频剧场 | 欧美第一黄网免费网站 | 亚洲日韩乱码中文无码蜜桃臀网站 | 久久亚洲中文字幕精品一区 | 久久无码专区国产精品s | 亚洲а∨天堂久久精品2021 | 亚洲欧美国产精品久久 | 亚洲成av人影院在线观看 | 野外少妇愉情中文字幕 | 天海翼激烈高潮到腰振不止 | 中国女人内谢69xxxxxa片 | 成人无码视频免费播放 | 亚洲综合无码一区二区三区 | 麻豆国产人妻欲求不满 | 日韩少妇内射免费播放 | 国产国产精品人在线视 | 色婷婷欧美在线播放内射 | 国产精品久久久久久亚洲影视内衣 | 中文字幕人妻无码一夲道 | 国产真实夫妇视频 | 久久精品国产亚洲精品 | 精品无码国产一区二区三区av | 欧美老妇交乱视频在线观看 | 中文字幕无码免费久久9一区9 | 中文字幕无码乱人伦 | 久久精品国产精品国产精品污 | 丰满肥臀大屁股熟妇激情视频 | 99在线 | 亚洲 | 国产精品自产拍在线观看 | 男人扒开女人内裤强吻桶进去 | 激情人妻另类人妻伦 | 亚洲国产精华液网站w | 国产无av码在线观看 | 亚洲国产午夜精品理论片 | 久久成人a毛片免费观看网站 | 一本久道久久综合狠狠爱 | 极品嫩模高潮叫床 | 国产成人综合在线女婷五月99播放 | 久精品国产欧美亚洲色aⅴ大片 | 国产午夜福利亚洲第一 | 久久无码人妻影院 | 久久天天躁夜夜躁狠狠 | 成人动漫在线观看 | 国产成人久久精品流白浆 | 精品乱子伦一区二区三区 | 熟女少妇在线视频播放 | 久久久久久久女国产乱让韩 | 色婷婷av一区二区三区之红樱桃 | 亚洲熟妇色xxxxx亚洲 | 最新国产麻豆aⅴ精品无码 | 黑人巨大精品欧美黑寡妇 | 国内精品久久久久久中文字幕 | 久久久久久av无码免费看大片 | 国内精品久久毛片一区二区 | 亚洲欧美日韩综合久久久 | 夜夜躁日日躁狠狠久久av | 日本xxxx色视频在线观看免费 | 伊人色综合久久天天小片 | 少妇的肉体aa片免费 | 日产精品99久久久久久 | 兔费看少妇性l交大片免费 | 国内揄拍国内精品少妇国语 | 天天拍夜夜添久久精品大 | 国产精品多人p群无码 | 99久久精品无码一区二区毛片 | 久久综合香蕉国产蜜臀av | 亚洲欧美综合区丁香五月小说 | 天天综合网天天综合色 | 无码人妻精品一区二区三区不卡 | 久久熟妇人妻午夜寂寞影院 | 国产精品99久久精品爆乳 | 日韩人妻少妇一区二区三区 | 奇米影视7777久久精品 | 人人妻人人藻人人爽欧美一区 | 精品乱码久久久久久久 | 久久精品人人做人人综合 | 一本久道久久综合狠狠爱 | 日韩亚洲欧美中文高清在线 | 亚洲男人av天堂午夜在 | 精品熟女少妇av免费观看 | 久久精品国产99精品亚洲 | 天天av天天av天天透 | 97色伦图片97综合影院 | 日韩精品一区二区av在线 | 久久精品无码一区二区三区 | 成 人 免费观看网站 | 少妇人妻av毛片在线看 | 亚洲日韩中文字幕在线播放 | 久久国产精品偷任你爽任你 | 在线亚洲高清揄拍自拍一品区 | 精品国产国产综合精品 | 国产黑色丝袜在线播放 | 男女下面进入的视频免费午夜 | 亚洲精品无码人妻无码 | 一本一道久久综合久久 | 丰满人妻精品国产99aⅴ | 亚洲无人区一区二区三区 | 国内揄拍国内精品人妻 | 丝袜 中出 制服 人妻 美腿 | 亚洲日本一区二区三区在线 | 中文字幕精品av一区二区五区 | 国产亲子乱弄免费视频 | 亚洲精品午夜无码电影网 | 东京热男人av天堂 | 99久久人妻精品免费一区 | 久久亚洲中文字幕精品一区 | 国产麻豆精品一区二区三区v视界 | 亚洲成色www久久网站 | 日本在线高清不卡免费播放 | 一本大道久久东京热无码av | 国产麻豆精品一区二区三区v视界 | 国产成人人人97超碰超爽8 | 丰满少妇女裸体bbw | 欧美刺激性大交 | 中文字幕无码乱人伦 | 亚洲国产一区二区三区在线观看 | 亚洲s色大片在线观看 | 无码毛片视频一区二区本码 | 欧美三级不卡在线观看 | 国产成人精品无码播放 | 国产人妻人伦精品 | 国产亚洲精品久久久闺蜜 | 亚洲国产av美女网站 | 亚洲成在人网站无码天堂 | 国产精品久久久久久久影院 | 国产三级精品三级男人的天堂 | 日韩精品无码一区二区中文字幕 | 高清不卡一区二区三区 | 国内揄拍国内精品少妇国语 | 一本色道久久综合狠狠躁 | 久久国产自偷自偷免费一区调 | 亚洲人成影院在线观看 | 性欧美疯狂xxxxbbbb | 亚洲国产午夜精品理论片 | 色婷婷综合激情综在线播放 | 久久久国产精品无码免费专区 | 国产亚洲精品久久久ai换 | 国产av无码专区亚洲a∨毛片 | 牛和人交xxxx欧美 | 少妇被黑人到高潮喷出白浆 | 久久精品国产亚洲精品 | 国产精品a成v人在线播放 | 国产亚洲视频中文字幕97精品 | 日本高清一区免费中文视频 | 亚洲国产精品一区二区第一页 | 九九热爱视频精品 | 国产偷抇久久精品a片69 | 亚洲中文字幕成人无码 | 国产香蕉尹人视频在线 | 国产女主播喷水视频在线观看 | 1000部啪啪未满十八勿入下载 | 日韩人妻无码中文字幕视频 | 人妻人人添人妻人人爱 | 中文字幕无码热在线视频 | 99精品国产综合久久久久五月天 | 亚洲成av人在线观看网址 | 国产人妻人伦精品 | 国模大胆一区二区三区 | 欧美阿v高清资源不卡在线播放 | 国产精品无码一区二区三区不卡 | 日日碰狠狠丁香久燥 | 亚洲最大成人网站 | 老熟女乱子伦 | аⅴ资源天堂资源库在线 | 亚洲精品一区二区三区大桥未久 | 亚洲国产精品成人久久蜜臀 | 中文字幕 亚洲精品 第1页 | 亚洲精品成人av在线 | 欧美成人家庭影院 | 国产午夜精品一区二区三区嫩草 | 少妇无码一区二区二三区 | 亚洲国产精华液网站w | 国产99久久精品一区二区 | 久久亚洲日韩精品一区二区三区 | 国产9 9在线 | 中文 | 久久综合网欧美色妞网 | 精品无码国产自产拍在线观看蜜 | 精品人妻人人做人人爽 | 久久无码中文字幕免费影院蜜桃 | 狠狠综合久久久久综合网 | 亚洲一区二区三区香蕉 | 欧美人与物videos另类 | 久久久精品国产sm最大网站 | 人人爽人人澡人人高潮 | 成人试看120秒体验区 | 久久综合九色综合欧美狠狠 | 久久国产自偷自偷免费一区调 | 亚洲色www成人永久网址 | 精品人人妻人人澡人人爽人人 | 99麻豆久久久国产精品免费 | 国产成人无码av一区二区 | 日本乱偷人妻中文字幕 | av无码不卡在线观看免费 | 漂亮人妻洗澡被公强 日日躁 | 欧美日本免费一区二区三区 | 色综合久久久久综合一本到桃花网 | 狠狠cao日日穞夜夜穞av | 成人免费视频一区二区 | 久久久精品国产sm最大网站 | 内射爽无广熟女亚洲 | 亚洲精品综合五月久久小说 | www国产亚洲精品久久久日本 | 久久精品中文字幕大胸 | aⅴ在线视频男人的天堂 | 狠狠躁日日躁夜夜躁2020 | 国产精品久免费的黄网站 | 午夜福利一区二区三区在线观看 | 亚洲国产日韩a在线播放 | 国产精品对白交换视频 | 噜噜噜亚洲色成人网站 | 亚洲欧美日韩综合久久久 | 国产精品久久久久久无码 | 国产精品.xx视频.xxtv | 国内揄拍国内精品少妇国语 | 亚洲色大成网站www | 国产免费久久精品国产传媒 | 国产精品久久精品三级 | 久久亚洲精品成人无码 | 乱人伦人妻中文字幕无码久久网 | 99麻豆久久久国产精品免费 | 双乳奶水饱满少妇呻吟 | 巨爆乳无码视频在线观看 | 大乳丰满人妻中文字幕日本 | 中文字幕乱码亚洲无线三区 | 波多野结衣av一区二区全免费观看 | 色欲人妻aaaaaaa无码 | 西西人体www44rt大胆高清 | 亚洲精品一区二区三区在线 | 亚洲自偷自拍另类第1页 | 久久久久99精品国产片 | 欧美刺激性大交 | 色一情一乱一伦一视频免费看 | 亚欧洲精品在线视频免费观看 | 欧美人与物videos另类 | 午夜精品久久久久久久 | 美女毛片一区二区三区四区 | 亚洲中文字幕无码一久久区 | 久久精品中文字幕大胸 | 成人无码视频免费播放 | 久久zyz资源站无码中文动漫 | 亚洲国产精品一区二区第一页 | 久久99热只有频精品8 | 国产莉萝无码av在线播放 | 久久无码中文字幕免费影院蜜桃 | 中文字幕av日韩精品一区二区 | 国产亲子乱弄免费视频 | 无码人妻丰满熟妇区五十路百度 | 在线观看欧美一区二区三区 | 国产精品亚洲一区二区三区喷水 | 日韩av无码一区二区三区 | 国产香蕉尹人综合在线观看 | 亚洲无人区午夜福利码高清完整版 | 日本大香伊一区二区三区 | 久久99精品久久久久婷婷 | 爱做久久久久久 | 乱人伦中文视频在线观看 | 自拍偷自拍亚洲精品被多人伦好爽 | 亚洲无人区一区二区三区 | 1000部夫妻午夜免费 | 美女毛片一区二区三区四区 | 无码毛片视频一区二区本码 | 日日麻批免费40分钟无码 | 久久综合网欧美色妞网 | 亚洲日韩av一区二区三区四区 | www成人国产高清内射 | 牛和人交xxxx欧美 | 久久亚洲精品成人无码 | 国产精华av午夜在线观看 | 国产午夜精品一区二区三区嫩草 | 免费视频欧美无人区码 | 久久精品中文闷骚内射 | 老熟妇乱子伦牲交视频 | 激情国产av做激情国产爱 | 色诱久久久久综合网ywww | 狠狠色色综合网站 | 丰满肥臀大屁股熟妇激情视频 | аⅴ资源天堂资源库在线 | а天堂中文在线官网 | 十八禁真人啪啪免费网站 | 国产片av国语在线观看 | 精品午夜福利在线观看 | 欧美日韩精品 | 国模大胆一区二区三区 | 秋霞成人午夜鲁丝一区二区三区 | 久久99国产综合精品 | 日日摸日日碰夜夜爽av | 狠狠亚洲超碰狼人久久 | 台湾无码一区二区 | 内射老妇bbwx0c0ck | 一本色道婷婷久久欧美 | 国产一精品一av一免费 | 中文字幕色婷婷在线视频 | 亚洲国产av精品一区二区蜜芽 | 日本一卡2卡3卡四卡精品网站 | 在线成人www免费观看视频 | 中文字幕av日韩精品一区二区 | 性色欲网站人妻丰满中文久久不卡 | 亚洲精品国产精品乱码视色 | 亚洲熟妇色xxxxx亚洲 | 强辱丰满人妻hd中文字幕 | 久久久精品国产sm最大网站 | 激情亚洲一区国产精品 | 国产激情无码一区二区app | 中文字幕无码av激情不卡 | 无码福利日韩神码福利片 | 啦啦啦www在线观看免费视频 | 人人爽人人澡人人高潮 | 亚洲成av人在线观看网址 | 久久zyz资源站无码中文动漫 | 中文字幕+乱码+中文字幕一区 | 国产69精品久久久久app下载 | 免费国产黄网站在线观看 | 久久99热只有频精品8 | 国产69精品久久久久app下载 | 99久久精品无码一区二区毛片 | √天堂资源地址中文在线 | 亚洲高清偷拍一区二区三区 | 国产sm调教视频在线观看 | 久久综合给久久狠狠97色 | 亚洲色成人中文字幕网站 | 无码精品国产va在线观看dvd | 国产精品va在线观看无码 | 婷婷丁香六月激情综合啪 | 性色av无码免费一区二区三区 | 狠狠色丁香久久婷婷综合五月 | 亚洲精品国偷拍自产在线麻豆 | 日韩av无码中文无码电影 | 男女超爽视频免费播放 | 丁香啪啪综合成人亚洲 | 麻花豆传媒剧国产免费mv在线 | 亚洲第一无码av无码专区 | 中文亚洲成a人片在线观看 | 午夜精品久久久内射近拍高清 | 国产精品对白交换视频 | 国产精品va在线播放 | 国产无套粉嫩白浆在线 | 日本一卡2卡3卡4卡无卡免费网站 国产一区二区三区影院 | 日日摸天天摸爽爽狠狠97 | 日本一区二区三区免费播放 | 国产 浪潮av性色四虎 | 亚洲精品一区国产 | 亚洲无人区午夜福利码高清完整版 | 成在人线av无码免观看麻豆 | 久久久精品国产sm最大网站 | 亚洲色在线无码国产精品不卡 | 无遮挡国产高潮视频免费观看 | 国产精品久久久久7777 | 少妇性俱乐部纵欲狂欢电影 | 国产另类ts人妖一区二区 | 纯爱无遮挡h肉动漫在线播放 | 日韩av无码一区二区三区不卡 | 女人色极品影院 | 国产真实乱对白精彩久久 | 一本久道久久综合狠狠爱 | 我要看www免费看插插视频 | 国产亚洲人成在线播放 | 成人试看120秒体验区 | 欧美人与牲动交xxxx | 精品国产一区二区三区四区在线看 | 99久久人妻精品免费一区 | 亚洲日韩一区二区三区 | 九月婷婷人人澡人人添人人爽 | 中文字幕日产无线码一区 | 国产精品办公室沙发 | 国产精品a成v人在线播放 | 天堂无码人妻精品一区二区三区 | 日韩亚洲欧美精品综合 | 久久成人a毛片免费观看网站 | 亚洲成a人一区二区三区 | 夜夜夜高潮夜夜爽夜夜爰爰 | 日韩av激情在线观看 | 亚洲天堂2017无码 | 精品少妇爆乳无码av无码专区 | 精品偷自拍另类在线观看 | 亚洲 激情 小说 另类 欧美 | 日本va欧美va欧美va精品 | 久久这里只有精品视频9 | 2020久久香蕉国产线看观看 | 久青草影院在线观看国产 | 国产av一区二区精品久久凹凸 | 在线观看国产午夜福利片 | 狠狠色丁香久久婷婷综合五月 | 国产精品嫩草久久久久 | 亚洲乱码中文字幕在线 | 国产手机在线αⅴ片无码观看 | 欧美第一黄网免费网站 | 暴力强奷在线播放无码 | 免费无码午夜福利片69 | 欧洲美熟女乱又伦 | 沈阳熟女露脸对白视频 | 成人精品天堂一区二区三区 | √天堂资源地址中文在线 | 天堂亚洲2017在线观看 | 俺去俺来也www色官网 | 性史性农村dvd毛片 | 麻豆av传媒蜜桃天美传媒 | 国产综合久久久久鬼色 | 国产精品亚洲综合色区韩国 | 人人妻人人澡人人爽人人精品浪潮 | 国产成人精品无码播放 | 免费国产成人高清在线观看网站 | 国产精品久久久一区二区三区 | 男女性色大片免费网站 | 无码乱肉视频免费大全合集 | 日韩人妻无码一区二区三区久久99 | 秋霞成人午夜鲁丝一区二区三区 | 亚洲人成影院在线观看 | 亚洲精品www久久久 | 亚洲经典千人经典日产 | 久久精品无码一区二区三区 | 亚洲狠狠婷婷综合久久 | 台湾无码一区二区 | 亚洲a无码综合a国产av中文 | 粗大的内捧猛烈进出视频 | 男女性色大片免费网站 | 九月婷婷人人澡人人添人人爽 | 国产成人综合色在线观看网站 | 国产色xx群视频射精 | 任你躁国产自任一区二区三区 | 国产黄在线观看免费观看不卡 | 久久久国产精品无码免费专区 | 国产综合色产在线精品 | 99麻豆久久久国产精品免费 | 六月丁香婷婷色狠狠久久 | 久久久精品欧美一区二区免费 | 在线播放无码字幕亚洲 | 婷婷综合久久中文字幕蜜桃三电影 | 色综合久久88色综合天天 | 男女超爽视频免费播放 | 久久99精品久久久久久 | 久久精品中文闷骚内射 | 国产性生大片免费观看性 | 国产精品国产三级国产专播 | 精品久久久久久亚洲精品 | 亚洲欧美日韩综合久久久 | 午夜丰满少妇性开放视频 | 国产另类ts人妖一区二区 | 美女极度色诱视频国产 | 国産精品久久久久久久 | 欧美阿v高清资源不卡在线播放 | 人人妻人人澡人人爽欧美一区 | 中文字幕人妻丝袜二区 | 黄网在线观看免费网站 | 国产色在线 | 国产 | 亚洲综合无码久久精品综合 | 亚洲成在人网站无码天堂 | 免费播放一区二区三区 | 成人欧美一区二区三区 | 国产9 9在线 | 中文 | 国产片av国语在线观看 | 中文字幕色婷婷在线视频 | 亚洲七七久久桃花影院 | 丝袜美腿亚洲一区二区 | 天下第一社区视频www日本 | 国产黄在线观看免费观看不卡 | 亚洲天堂2017无码 | 免费看少妇作爱视频 | 在线精品国产一区二区三区 | 中文久久乱码一区二区 | 亚洲最大成人网站 | 一本大道久久东京热无码av | 亚洲精品无码人妻无码 | 亚洲精品一区二区三区在线观看 | 狂野欧美性猛交免费视频 | 曰本女人与公拘交酡免费视频 | 一本色道久久综合狠狠躁 | 丰满肥臀大屁股熟妇激情视频 | 久久99精品国产麻豆 | 午夜无码人妻av大片色欲 | 我要看www免费看插插视频 | 无遮无挡爽爽免费视频 | 好爽又高潮了毛片免费下载 | 真人与拘做受免费视频 | 久久精品国产大片免费观看 | 97久久国产亚洲精品超碰热 | 人人爽人人爽人人片av亚洲 | 又黄又爽又色的视频 | 久久五月精品中文字幕 | 免费播放一区二区三区 | √天堂资源地址中文在线 | 亚洲国产精品毛片av不卡在线 | 四十如虎的丰满熟妇啪啪 | 黑人玩弄人妻中文在线 | 精品一二三区久久aaa片 | 亚洲综合色区中文字幕 | 亚洲成熟女人毛毛耸耸多 | 男女性色大片免费网站 | 又大又紧又粉嫩18p少妇 | 色综合久久88色综合天天 | 无码人妻丰满熟妇区五十路百度 | 国产人妻精品一区二区三区 | 国产精品18久久久久久麻辣 | 欧美性生交xxxxx久久久 | 永久黄网站色视频免费直播 | 久久精品99久久香蕉国产色戒 | 国产又爽又黄又刺激的视频 | 无码精品人妻一区二区三区av | 国产精品亚洲lv粉色 | 爆乳一区二区三区无码 | 99视频精品全部免费免费观看 | 18黄暴禁片在线观看 | 欧美人与牲动交xxxx | 国产一区二区三区四区五区加勒比 | 久久99精品久久久久婷婷 | 免费国产黄网站在线观看 | 国产精品人人妻人人爽 | 久久国语露脸国产精品电影 | 亚洲色在线无码国产精品不卡 | 久久久久久国产精品无码下载 | 亚洲一区二区观看播放 | 国产va免费精品观看 | 久久精品人妻少妇一区二区三区 | 欧美猛少妇色xxxxx | 亚洲综合在线一区二区三区 | 激情内射日本一区二区三区 | 无码人妻av免费一区二区三区 | 国产成人亚洲综合无码 | 老熟女重囗味hdxx69 | 国产无套内射久久久国产 | 精品无码国产一区二区三区av | 18禁止看的免费污网站 | 久久无码中文字幕免费影院蜜桃 | 国产午夜精品一区二区三区嫩草 | 麻花豆传媒剧国产免费mv在线 | 中文字幕日韩精品一区二区三区 | 一本久久a久久精品vr综合 | 午夜熟女插插xx免费视频 | 国产艳妇av在线观看果冻传媒 | 波多野结衣av一区二区全免费观看 | 中文字幕日韩精品一区二区三区 | 无码精品人妻一区二区三区av | 午夜熟女插插xx免费视频 | 欧美老妇交乱视频在线观看 | 国产极品视觉盛宴 | 欧美黑人巨大xxxxx | 国产农村妇女aaaaa视频 撕开奶罩揉吮奶头视频 | 国产成人无码区免费内射一片色欲 | 装睡被陌生人摸出水好爽 | 国产精品99久久精品爆乳 | 国产小呦泬泬99精品 | 亚洲天堂2017无码 | 色诱久久久久综合网ywww | 精品aⅴ一区二区三区 | 99久久人妻精品免费一区 | 麻豆国产人妻欲求不满谁演的 | 乱中年女人伦av三区 | 亚洲国精产品一二二线 | 亚洲一区av无码专区在线观看 | 亚洲精品成a人在线观看 | 国产偷抇久久精品a片69 | 亚洲一区二区三区四区 | 东京一本一道一二三区 | 国产成人无码av在线影院 | 网友自拍区视频精品 | 少妇性俱乐部纵欲狂欢电影 | 少妇激情av一区二区 | 麻豆果冻传媒2021精品传媒一区下载 | 亚洲精品欧美二区三区中文字幕 | 无码国产乱人伦偷精品视频 | 国产麻豆精品精东影业av网站 | 18禁黄网站男男禁片免费观看 | 亚洲人成网站免费播放 | 妺妺窝人体色www在线小说 | 日日天干夜夜狠狠爱 | 免费看男女做好爽好硬视频 | 人妻天天爽夜夜爽一区二区 | 激情五月综合色婷婷一区二区 | 亚洲精品成人福利网站 | 性色av无码免费一区二区三区 | 亚洲精品一区二区三区四区五区 | 国产情侣作爱视频免费观看 | 日本大香伊一区二区三区 | 亚洲欧美国产精品久久 | 人人妻人人澡人人爽人人精品浪潮 | 成熟人妻av无码专区 | 麻豆精品国产精华精华液好用吗 | 日本va欧美va欧美va精品 | 无码人妻精品一区二区三区下载 | 亚洲精品国产品国语在线观看 | 99视频精品全部免费免费观看 | 午夜福利电影 | 亚洲s色大片在线观看 | 国产性猛交╳xxx乱大交 国产精品久久久久久无码 欧洲欧美人成视频在线 | 国产精品国产三级国产专播 | 国产两女互慰高潮视频在线观看 | 宝宝好涨水快流出来免费视频 | 麻豆精品国产精华精华液好用吗 | 精品一区二区三区波多野结衣 | 亚洲国产精品久久久久久 | 欧美丰满熟妇xxxx性ppx人交 | 久久亚洲精品中文字幕无男同 | 国产精品亚洲专区无码不卡 | 狠狠噜狠狠狠狠丁香五月 | 性欧美牲交xxxxx视频 | 一本久道久久综合狠狠爱 | 99视频精品全部免费免费观看 | 久精品国产欧美亚洲色aⅴ大片 | 蜜桃无码一区二区三区 | 国产另类ts人妖一区二区 | 国产两女互慰高潮视频在线观看 | 午夜男女很黄的视频 | 成人亚洲精品久久久久软件 | 成在人线av无码免观看麻豆 | 国产欧美亚洲精品a | 国产亚洲精品久久久闺蜜 | av人摸人人人澡人人超碰下载 | 2020久久超碰国产精品最新 | 亚洲日韩一区二区 | 亚洲色大成网站www国产 | 日韩 欧美 动漫 国产 制服 | 日本爽爽爽爽爽爽在线观看免 | 国产欧美亚洲精品a | 国产xxx69麻豆国语对白 | 日本肉体xxxx裸交 | 精品久久久久久人妻无码中文字幕 | 亚洲欧美国产精品专区久久 | 午夜成人1000部免费视频 | 国产激情无码一区二区 | 日本www一道久久久免费榴莲 | 少妇人妻av毛片在线看 | 久久无码中文字幕免费影院蜜桃 | 免费无码肉片在线观看 | 国产真人无遮挡作爱免费视频 | 人人妻人人藻人人爽欧美一区 | 狠狠色色综合网站 | 亚洲成熟女人毛毛耸耸多 | 少妇性l交大片欧洲热妇乱xxx | 国产手机在线αⅴ片无码观看 | 性啪啪chinese东北女人 | 日韩人妻无码中文字幕视频 | 久久精品人人做人人综合试看 | 国产极品视觉盛宴 | 欧美人与牲动交xxxx | 国产精品久久久一区二区三区 | 精品久久综合1区2区3区激情 | 无码人妻少妇伦在线电影 | 欧美日韩综合一区二区三区 | 欧美人妻一区二区三区 | 国精产品一区二区三区 | 无码人妻丰满熟妇区毛片18 | 久久久精品国产sm最大网站 | 人妻夜夜爽天天爽三区 | 国产黑色丝袜在线播放 | 丝袜美腿亚洲一区二区 | 欧美人与禽猛交狂配 | 精品一区二区三区波多野结衣 | 久久综合九色综合97网 | a国产一区二区免费入口 | 台湾无码一区二区 | 少妇人妻大乳在线视频 | 少妇性俱乐部纵欲狂欢电影 | 国産精品久久久久久久 | 捆绑白丝粉色jk震动捧喷白浆 | 亚洲精品一区二区三区婷婷月 | 麻豆果冻传媒2021精品传媒一区下载 | 巨爆乳无码视频在线观看 | 国产精品久久久午夜夜伦鲁鲁 | 午夜福利试看120秒体验区 | 国产乱子伦视频在线播放 | 久久精品一区二区三区四区 | 久久综合狠狠综合久久综合88 | 一本色道久久综合亚洲精品不卡 | 少女韩国电视剧在线观看完整 | 中文无码伦av中文字幕 | 国产人妻大战黑人第1集 | 国产手机在线αⅴ片无码观看 | 成人欧美一区二区三区黑人 | 女人和拘做爰正片视频 | 精品水蜜桃久久久久久久 | 色欲人妻aaaaaaa无码 | 无码精品国产va在线观看dvd | 综合人妻久久一区二区精品 | 国产一区二区三区四区五区加勒比 | 欧美日韩亚洲国产精品 | 九九综合va免费看 | 国内精品久久毛片一区二区 | 中文字幕人妻无码一区二区三区 | 99视频精品全部免费免费观看 | 亚洲精品欧美二区三区中文字幕 | 青草青草久热国产精品 | 无码人妻丰满熟妇区毛片18 | 国产网红无码精品视频 | 一本大道久久东京热无码av | 高潮毛片无遮挡高清免费视频 | 国产两女互慰高潮视频在线观看 | 亚洲性无码av中文字幕 | 人人妻人人澡人人爽精品欧美 | 3d动漫精品啪啪一区二区中 | 婷婷五月综合激情中文字幕 | 精品久久久久香蕉网 | 国产成人无码区免费内射一片色欲 | 亚洲国产综合无码一区 | 欧美黑人性暴力猛交喷水 | 激情五月综合色婷婷一区二区 | 鲁大师影院在线观看 | 51国偷自产一区二区三区 | 国产亚洲日韩欧美另类第八页 | 少妇高潮一区二区三区99 | 色一情一乱一伦一视频免费看 | 欧美丰满少妇xxxx性 | 国产无遮挡吃胸膜奶免费看 | 97夜夜澡人人爽人人喊中国片 | 久久人妻内射无码一区三区 | 中文字幕 亚洲精品 第1页 | 国产激情无码一区二区app | 亚洲の无码国产の无码步美 | 欧美性猛交内射兽交老熟妇 | 精品无码av一区二区三区 | 搡女人真爽免费视频大全 | 无码精品国产va在线观看dvd | 久久亚洲中文字幕精品一区 | 国产后入清纯学生妹 | 麻豆人妻少妇精品无码专区 | 国产亚洲精品久久久久久 | 国产两女互慰高潮视频在线观看 | 在线天堂新版最新版在线8 | 亚洲娇小与黑人巨大交 | 精品欧美一区二区三区久久久 | 国产精品无码一区二区桃花视频 | 亚洲精品一区三区三区在线观看 | 欧美大屁股xxxxhd黑色 | 兔费看少妇性l交大片免费 | 成年美女黄网站色大免费视频 | 少妇高潮一区二区三区99 | 精品欧洲av无码一区二区三区 | 在线а√天堂中文官网 | 成人毛片一区二区 | 国产一区二区三区日韩精品 | 日本免费一区二区三区最新 | 中文字幕人成乱码熟女app | 国产又爽又黄又刺激的视频 | 久久久久se色偷偷亚洲精品av | 中文无码成人免费视频在线观看 | aⅴ亚洲 日韩 色 图网站 播放 | 欧美亚洲国产一区二区三区 | 亚洲无人区午夜福利码高清完整版 | 超碰97人人做人人爱少妇 | 亚洲色无码一区二区三区 | 亚洲国产综合无码一区 | 熟妇人妻中文av无码 | 丁香花在线影院观看在线播放 | 国产无套粉嫩白浆在线 | 岛国片人妻三上悠亚 | 亚洲精品综合一区二区三区在线 | 久久久精品成人免费观看 | 久久久av男人的天堂 | 欧美激情综合亚洲一二区 | 2020久久超碰国产精品最新 | 18无码粉嫩小泬无套在线观看 | 国产成人无码av片在线观看不卡 | 亚洲小说春色综合另类 | 国产人妻精品一区二区三区 | 久久亚洲精品成人无码 | 图片小说视频一区二区 | 成人性做爰aaa片免费看不忠 | 日本精品人妻无码免费大全 | 婷婷综合久久中文字幕蜜桃三电影 | 精品欧洲av无码一区二区三区 | 欧美日韩在线亚洲综合国产人 | 麻豆果冻传媒2021精品传媒一区下载 | 无套内谢的新婚少妇国语播放 | 最近中文2019字幕第二页 | 国内揄拍国内精品少妇国语 | 丁香花在线影院观看在线播放 | 国产精品久久久久久无码 | 中文无码成人免费视频在线观看 | 丰腴饱满的极品熟妇 | 精品无人国产偷自产在线 | 国产两女互慰高潮视频在线观看 | 日韩av无码中文无码电影 | 秋霞成人午夜鲁丝一区二区三区 | 日韩在线不卡免费视频一区 | 国产内射老熟女aaaa | 国产激情艳情在线看视频 | 18禁黄网站男男禁片免费观看 | 久久精品国产精品国产精品污 | 一本久道久久综合狠狠爱 | 76少妇精品导航 | 无码一区二区三区在线观看 | 99久久人妻精品免费二区 | 精品欧洲av无码一区二区三区 | 人妻少妇精品无码专区二区 | 男女性色大片免费网站 | 亚洲色在线无码国产精品不卡 | 国产香蕉尹人综合在线观看 | 伦伦影院午夜理论片 | 亚洲精品久久久久久一区二区 | 国产人妖乱国产精品人妖 | а√天堂www在线天堂小说 | 18禁黄网站男男禁片免费观看 | av无码久久久久不卡免费网站 | 青春草在线视频免费观看 | 在线亚洲高清揄拍自拍一品区 | 国产欧美亚洲精品a | 久久精品人妻少妇一区二区三区 | 激情爆乳一区二区三区 | 欧美 丝袜 自拍 制服 另类 | 国产在线一区二区三区四区五区 | 麻花豆传媒剧国产免费mv在线 | v一区无码内射国产 | 色综合久久久无码网中文 | 免费国产成人高清在线观看网站 | 亚洲乱码日产精品bd | 欧美zoozzooz性欧美 | 国产97在线 | 亚洲 | 国产绳艺sm调教室论坛 | 欧洲极品少妇 | 国产乱人伦app精品久久 国产在线无码精品电影网 国产国产精品人在线视 | 成人免费无码大片a毛片 | 思思久久99热只有频精品66 | 天堂无码人妻精品一区二区三区 | 无遮无挡爽爽免费视频 | 国产乱人无码伦av在线a | 亚洲男女内射在线播放 | 粗大的内捧猛烈进出视频 | 久久人人爽人人人人片 | 99久久精品午夜一区二区 | 一本色道婷婷久久欧美 | 中文字幕无码av激情不卡 | 国产成人综合色在线观看网站 | 久久久精品欧美一区二区免费 | 女人被爽到呻吟gif动态图视看 | 亚洲精品国产精品乱码不卡 | 最新版天堂资源中文官网 | 丝袜足控一区二区三区 | 极品嫩模高潮叫床 | 精品偷拍一区二区三区在线看 | 欧美放荡的少妇 | 99国产精品白浆在线观看免费 | 久久久av男人的天堂 | 国产精品福利视频导航 | 99久久亚洲精品无码毛片 | 亚洲人交乣女bbw | 免费无码的av片在线观看 | 国产精品无码久久av | 国语精品一区二区三区 | 内射老妇bbwx0c0ck | 伦伦影院午夜理论片 | 成 人影片 免费观看 | 天天拍夜夜添久久精品大 | 日本精品高清一区二区 | 国内精品人妻无码久久久影院 | 国产午夜视频在线观看 | 国产成人精品优优av | 日本xxxx色视频在线观看免费 | 老司机亚洲精品影院无码 | 麻豆国产人妻欲求不满谁演的 | 国产午夜精品一区二区三区嫩草 | 少妇无码av无码专区在线观看 | av无码不卡在线观看免费 | 欧美日韩久久久精品a片 | 国产在线aaa片一区二区99 | 国产香蕉尹人视频在线 | 色偷偷人人澡人人爽人人模 | 精品欧洲av无码一区二区三区 | 性色av无码免费一区二区三区 | 搡女人真爽免费视频大全 | 国产高清av在线播放 | 黑人巨大精品欧美一区二区 | 日本高清一区免费中文视频 | 国产亚洲精品久久久久久大师 | 久久久久亚洲精品男人的天堂 | 久久久久久亚洲精品a片成人 | 一本久道久久综合婷婷五月 | 无码人妻出轨黑人中文字幕 | av无码久久久久不卡免费网站 | 午夜精品一区二区三区在线观看 | 久久久久成人精品免费播放动漫 | 久久aⅴ免费观看 | 2019nv天堂香蕉在线观看 | 国产精品美女久久久网av | 欧美精品在线观看 | 国产精品理论片在线观看 | 日韩精品a片一区二区三区妖精 | 国产性生交xxxxx无码 | 国产人妻精品一区二区三区 | 国产九九九九九九九a片 | 学生妹亚洲一区二区 | 亚洲人成人无码网www国产 | 亚洲欧洲日本综合aⅴ在线 | 成人精品视频一区二区 | 亚洲国产精品一区二区美利坚 | 国产精品亚洲五月天高清 | 日韩av无码一区二区三区 | 久久久久av无码免费网 | 国产美女精品一区二区三区 | 亚洲精品国偷拍自产在线观看蜜桃 | 人人爽人人澡人人高潮 | 国产精品亚洲а∨无码播放麻豆 | 国产精品高潮呻吟av久久 | 无码av岛国片在线播放 | 亚洲精品一区三区三区在线观看 | 狠狠色丁香久久婷婷综合五月 | 无码免费一区二区三区 | 日韩精品无码一本二本三本色 | 人人妻人人澡人人爽欧美精品 | 国产特级毛片aaaaaa高潮流水 | 国产人妻精品一区二区三区 | 色综合久久久久综合一本到桃花网 | 欧美日韩一区二区免费视频 | 国产午夜无码精品免费看 | 国产办公室秘书无码精品99 | 一二三四在线观看免费视频 | 中文字幕人成乱码熟女app | 狠狠躁日日躁夜夜躁2020 | 欧美国产日韩亚洲中文 | 国产精品无码永久免费888 | 无遮挡啪啪摇乳动态图 | 色欲久久久天天天综合网精品 | 亚洲欧美日韩国产精品一区二区 | 在线看片无码永久免费视频 | 午夜免费福利小电影 | 久久国产精品精品国产色婷婷 | 久9re热视频这里只有精品 | 精品无码一区二区三区的天堂 | 国产性生交xxxxx无码 | 亚洲人成网站色7799 | 欧美日本日韩 | 无遮无挡爽爽免费视频 | 中文字幕 亚洲精品 第1页 | 88国产精品欧美一区二区三区 | 婷婷综合久久中文字幕蜜桃三电影 | 久久久久久久久蜜桃 | 亚洲中文字幕无码一久久区 | 亚洲国产av精品一区二区蜜芽 | 两性色午夜免费视频 | 久久久精品成人免费观看 | 亚洲日韩av一区二区三区中文 | 国产性生交xxxxx无码 | 国产亚av手机在线观看 | 一区二区三区高清视频一 | 55夜色66夜色国产精品视频 | 99riav国产精品视频 | aⅴ亚洲 日韩 色 图网站 播放 | 日本va欧美va欧美va精品 | 午夜理论片yy44880影院 | 中文字幕无码日韩欧毛 | 精品夜夜澡人妻无码av蜜桃 | 久久五月精品中文字幕 | 亚洲娇小与黑人巨大交 | 久久久久se色偷偷亚洲精品av | 老子影院午夜伦不卡 | 18黄暴禁片在线观看 | 国产内射爽爽大片视频社区在线 | 三上悠亚人妻中文字幕在线 | 久久精品国产亚洲精品 | 国产av剧情md精品麻豆 | 亚洲色在线无码国产精品不卡 | 亚洲熟妇色xxxxx亚洲 | 国产精品办公室沙发 | 色情久久久av熟女人妻网站 | 国产又爽又黄又刺激的视频 | 欧美激情综合亚洲一二区 | 久久综合色之久久综合 | 亚洲欧美精品aaaaaa片 | 国产凸凹视频一区二区 | 日日摸日日碰夜夜爽av | 丁香啪啪综合成人亚洲 | 日本大香伊一区二区三区 | 国产九九九九九九九a片 | 精品国产一区二区三区av 性色 | 亚洲性无码av中文字幕 | 亚洲国产精品无码一区二区三区 | 人妻无码久久精品人妻 | 亚洲色欲色欲欲www在线 | 色婷婷综合激情综在线播放 | 高中生自慰www网站 | 东京热男人av天堂 | 在线天堂新版最新版在线8 | 国产真人无遮挡作爱免费视频 | 日韩人妻少妇一区二区三区 | 久久99精品国产麻豆蜜芽 | 国精产品一区二区三区 | 精品午夜福利在线观看 | 日日干夜夜干 | 正在播放东北夫妻内射 | 人人妻在人人 | 国产成人无码午夜视频在线观看 | 国产乱人偷精品人妻a片 | 一个人看的视频www在线 | 精品国产av色一区二区深夜久久 | 欧美午夜特黄aaaaaa片 | 亚洲乱亚洲乱妇50p | 永久免费精品精品永久-夜色 | 国产人妻精品午夜福利免费 | 日本护士xxxxhd少妇 | 日日鲁鲁鲁夜夜爽爽狠狠 | 少妇人妻av毛片在线看 | 成人免费视频视频在线观看 免费 | 久久精品国产大片免费观看 | 亚洲国产精品成人久久蜜臀 | 国产成人人人97超碰超爽8 | 中文字幕乱码人妻二区三区 | 无码人妻久久一区二区三区不卡 | 欧美熟妇另类久久久久久不卡 | 亚洲の无码国产の无码步美 | 日本一本二本三区免费 | 给我免费的视频在线观看 | 永久黄网站色视频免费直播 | 给我免费的视频在线观看 | 久久综合给久久狠狠97色 | 亚洲精品一区二区三区四区五区 | 精品成在人线av无码免费看 | 久久精品国产精品国产精品污 | 亚洲一区二区三区香蕉 | 亚洲精品国产精品乱码不卡 | 欧美日本免费一区二区三区 | 日韩精品无码免费一区二区三区 | 国产精品人人妻人人爽 | 国产成人综合美国十次 | 性生交片免费无码看人 | 国色天香社区在线视频 | 国产免费观看黄av片 | 色爱情人网站 | 激情五月综合色婷婷一区二区 | 在线观看欧美一区二区三区 | 美女毛片一区二区三区四区 | 日韩亚洲欧美中文高清在线 | 99久久亚洲精品无码毛片 | 性欧美疯狂xxxxbbbb | 欧洲极品少妇 | 内射爽无广熟女亚洲 | 亚洲人成网站免费播放 | 亚洲爆乳无码专区 | 特大黑人娇小亚洲女 | 中文无码成人免费视频在线观看 | 俺去俺来也在线www色官网 | 久久伊人色av天堂九九小黄鸭 | 荡女精品导航 | 亚洲精品久久久久久一区二区 | 国产真实夫妇视频 | 亚洲国产精品久久人人爱 | 国产成人无码区免费内射一片色欲 | 国产精品久久久午夜夜伦鲁鲁 | 国产精品无码一区二区桃花视频 | 亚洲国产av美女网站 | 88国产精品欧美一区二区三区 | 免费看男女做好爽好硬视频 | 精品人人妻人人澡人人爽人人 | 国产人妻精品午夜福利免费 | 在线 国产 欧美 亚洲 天堂 | 男女猛烈xx00免费视频试看 | 中文字幕亚洲情99在线 | 丰满人妻一区二区三区免费视频 | 欧美激情内射喷水高潮 | 欧美熟妇另类久久久久久多毛 | 噜噜噜亚洲色成人网站 | 中国女人内谢69xxxxxa片 | 夜精品a片一区二区三区无码白浆 | 国产极品美女高潮无套在线观看 | 人妻与老人中文字幕 | 99精品久久毛片a片 | 久久国产精品精品国产色婷婷 | 暴力强奷在线播放无码 | 欧美高清在线精品一区 | 日韩精品无码免费一区二区三区 | 精品国产成人一区二区三区 | 国产人妻精品一区二区三区 | 图片区 小说区 区 亚洲五月 | 国产精品人人爽人人做我的可爱 | 国产女主播喷水视频在线观看 | 鲁一鲁av2019在线 | 日韩 欧美 动漫 国产 制服 | 老熟妇乱子伦牲交视频 | 西西人体www44rt大胆高清 | 亚洲一区二区三区含羞草 | 日日天干夜夜狠狠爱 | 国产亚洲精品久久久久久大师 | 99久久精品无码一区二区毛片 | 久久精品国产亚洲精品 | 女人色极品影院 | 国产麻豆精品一区二区三区v视界 | 欧美熟妇另类久久久久久多毛 | 丰满人妻翻云覆雨呻吟视频 | 黑森林福利视频导航 | 中文精品无码中文字幕无码专区 | 欧美成人免费全部网站 | 男人的天堂2018无码 | 亚洲精品成a人在线观看 | √8天堂资源地址中文在线 | 日韩人妻无码一区二区三区久久99 | 国产成人精品视频ⅴa片软件竹菊 | 人人妻人人澡人人爽人人精品浪潮 | 国产农村妇女aaaaa视频 撕开奶罩揉吮奶头视频 | 丰满肥臀大屁股熟妇激情视频 | 国产片av国语在线观看 | 国产成人午夜福利在线播放 | 成人精品天堂一区二区三区 | 久久午夜无码鲁丝片午夜精品 | 久久精品人人做人人综合 | 女人色极品影院 | 午夜福利试看120秒体验区 | 亚洲aⅴ无码成人网站国产app | 午夜无码区在线观看 | 国产深夜福利视频在线 | 日本精品高清一区二区 | 一本色道婷婷久久欧美 | 亚洲成av人片在线观看无码不卡 | 福利一区二区三区视频在线观看 | 最近中文2019字幕第二页 | 亚洲狠狠婷婷综合久久 | 久久久精品国产sm最大网站 | 国产免费久久精品国产传媒 | 成人av无码一区二区三区 | 日本免费一区二区三区最新 | 国内精品人妻无码久久久影院蜜桃 | 全球成人中文在线 | 1000部啪啪未满十八勿入下载 | 97精品人妻一区二区三区香蕉 | 国内精品人妻无码久久久影院 | 夜夜夜高潮夜夜爽夜夜爰爰 | 国产人妻久久精品二区三区老狼 | 色婷婷av一区二区三区之红樱桃 | 亚洲精品国产精品乱码不卡 | 亚洲综合无码一区二区三区 | 亚洲无人区一区二区三区 | 天堂а√在线地址中文在线 | 国产精品免费大片 | 成人精品一区二区三区中文字幕 | www国产亚洲精品久久网站 | 久久综合狠狠综合久久综合88 | 99久久婷婷国产综合精品青草免费 | 亚洲人交乣女bbw | 欧美性猛交内射兽交老熟妇 | 成人性做爰aaa片免费看 | 欧美国产亚洲日韩在线二区 | 中文精品无码中文字幕无码专区 | 野外少妇愉情中文字幕 | 88国产精品欧美一区二区三区 | 好爽又高潮了毛片免费下载 | 国产无遮挡又黄又爽免费视频 | 黑人粗大猛烈进出高潮视频 | 日韩人妻少妇一区二区三区 | 成人性做爰aaa片免费看 | 亚洲熟妇色xxxxx欧美老妇 | 岛国片人妻三上悠亚 | 亚洲自偷精品视频自拍 | 国产婷婷色一区二区三区在线 | 无码人妻精品一区二区三区下载 | 午夜不卡av免费 一本久久a久久精品vr综合 | 亚洲熟女一区二区三区 | 亚洲娇小与黑人巨大交 | 色综合久久久无码网中文 | 国产乱人伦app精品久久 国产在线无码精品电影网 国产国产精品人在线视 | 国产成人精品一区二区在线小狼 | av在线亚洲欧洲日产一区二区 | 欧美人与善在线com | 又黄又爽又色的视频 | 内射老妇bbwx0c0ck | 国产亚洲精品精品国产亚洲综合 | 久久久久久久人妻无码中文字幕爆 | 国产午夜亚洲精品不卡 | 久久精品中文字幕一区 | 夜夜躁日日躁狠狠久久av | 久久久国产一区二区三区 | 欧美一区二区三区 | 国産精品久久久久久久 | 天堂一区人妻无码 | 国产亚洲精品久久久久久大师 | 麻豆精产国品 | 欧美野外疯狂做受xxxx高潮 | 丰满人妻翻云覆雨呻吟视频 | 日本熟妇浓毛 | 无码人妻精品一区二区三区不卡 | 国产高潮视频在线观看 | 久久久国产一区二区三区 | 日本在线高清不卡免费播放 | 亚洲一区二区三区偷拍女厕 | 98国产精品综合一区二区三区 | 日韩精品无码免费一区二区三区 | 亚洲自偷精品视频自拍 | 俄罗斯老熟妇色xxxx | 久久精品中文字幕大胸 | 久久97精品久久久久久久不卡 | 高潮毛片无遮挡高清免费 | 欧美一区二区三区 | 在线观看国产一区二区三区 | 日欧一片内射va在线影院 | 在线欧美精品一区二区三区 | √天堂资源地址中文在线 | v一区无码内射国产 | 日韩精品无码免费一区二区三区 | 高清国产亚洲精品自在久久 | 免费看男女做好爽好硬视频 | 久久精品无码一区二区三区 | 精品久久综合1区2区3区激情 | 风流少妇按摩来高潮 | 午夜福利试看120秒体验区 | 久久天天躁夜夜躁狠狠 | 色综合久久久无码中文字幕 | 日本成熟视频免费视频 | 国产艳妇av在线观看果冻传媒 | 亚洲精品综合五月久久小说 | 国产免费久久精品国产传媒 | 国精产品一品二品国精品69xx | 未满成年国产在线观看 | 久久久久国色av免费观看性色 | 久久久久亚洲精品中文字幕 | 欧美乱妇无乱码大黄a片 | 麻豆成人精品国产免费 | 亚洲精品鲁一鲁一区二区三区 | 1000部啪啪未满十八勿入下载 | 久久天天躁狠狠躁夜夜免费观看 | 性欧美牲交在线视频 | 青青青手机频在线观看 | 亚洲人成影院在线观看 | 国产美女极度色诱视频www | 国产成人综合美国十次 | 国产真人无遮挡作爱免费视频 | 强奷人妻日本中文字幕 | 乱码av麻豆丝袜熟女系列 | 中文字幕人妻无码一夲道 | 蜜桃臀无码内射一区二区三区 | 日韩精品无码免费一区二区三区 | 亚洲精品一区国产 | 色综合久久久久综合一本到桃花网 | 国产乱子伦视频在线播放 | 亚洲欧美日韩国产精品一区二区 | 色综合久久88色综合天天 | 亚洲 另类 在线 欧美 制服 | 亚洲爆乳大丰满无码专区 | 四虎4hu永久免费 | 午夜性刺激在线视频免费 | 日韩人妻无码中文字幕视频 | 国产办公室秘书无码精品99 | 97久久精品无码一区二区 | 精品一区二区不卡无码av | 成人欧美一区二区三区 | 精品成在人线av无码免费看 | 国产成人精品久久亚洲高清不卡 | 亚洲天堂2017无码 | 国产精品美女久久久久av爽李琼 | 中文字幕 人妻熟女 | 中文字幕乱码人妻二区三区 | 久久国产劲爆∧v内射 | 欧美日韩综合一区二区三区 | 久久精品人妻少妇一区二区三区 | 国产精品久久久久久无码 | 国产精品亚洲五月天高清 | 自拍偷自拍亚洲精品被多人伦好爽 | 偷窥日本少妇撒尿chinese | 丰满岳乱妇在线观看中字无码 | 丝袜 中出 制服 人妻 美腿 | 国产精华av午夜在线观看 | 亚洲精品www久久久 | 好男人www社区 | 天堂亚洲2017在线观看 | 四虎国产精品免费久久 | 大胆欧美熟妇xx | 国产精品手机免费 | 亚洲日韩一区二区三区 | 国产精华av午夜在线观看 | 人妻少妇精品久久 | 蜜桃无码一区二区三区 | 免费观看激色视频网站 | 日韩欧美成人免费观看 | 毛片内射-百度 | 久久久久久a亚洲欧洲av冫 | 东京一本一道一二三区 | 奇米影视7777久久精品 | 亚洲日韩一区二区三区 | 在线播放亚洲第一字幕 | 夜夜躁日日躁狠狠久久av | 曰韩少妇内射免费播放 | 日韩少妇内射免费播放 | 国产精品高潮呻吟av久久4虎 | 国产亚洲精品久久久久久久 | www国产亚洲精品久久久日本 | 日本一卡2卡3卡四卡精品网站 | 亚洲人成网站色7799 | 最新国产乱人伦偷精品免费网站 | 国产97人人超碰caoprom | 亚洲一区二区三区在线观看网站 | 欧美日本日韩 | 四虎国产精品免费久久 | 少妇厨房愉情理9仑片视频 | 老头边吃奶边弄进去呻吟 | 国产在线精品一区二区高清不卡 | 麻花豆传媒剧国产免费mv在线 | 97久久精品无码一区二区 | a片免费视频在线观看 | 日韩人妻无码中文字幕视频 | 日日躁夜夜躁狠狠躁 | 亚洲国产精品久久久天堂 | 乱人伦中文视频在线观看 | 99精品无人区乱码1区2区3区 | 亚洲中文字幕成人无码 | 免费无码的av片在线观看 | 在线精品国产一区二区三区 | 精品无人区无码乱码毛片国产 | 国产美女精品一区二区三区 | 无码av最新清无码专区吞精 | 精品乱码久久久久久久 | 久久综合给合久久狠狠狠97色 | 久久久久久av无码免费看大片 | 综合网日日天干夜夜久久 | 最新国产乱人伦偷精品免费网站 | 福利一区二区三区视频在线观看 | 精品国产精品久久一区免费式 | 中文字幕乱妇无码av在线 | 无码一区二区三区在线观看 | 蜜桃臀无码内射一区二区三区 | 精品偷自拍另类在线观看 | av在线亚洲欧洲日产一区二区 | 国产网红无码精品视频 | 亚洲精品综合五月久久小说 | 国产乱人伦app精品久久 国产在线无码精品电影网 国产国产精品人在线视 | 美女极度色诱视频国产 | 国产三级精品三级男人的天堂 | 久久精品成人欧美大片 | 在线播放免费人成毛片乱码 | 强辱丰满人妻hd中文字幕 | 天天拍夜夜添久久精品 | 成 人 网 站国产免费观看 | 欧美日韩久久久精品a片 | 国产97色在线 | 免 | 国产熟女一区二区三区四区五区 | 麻豆人妻少妇精品无码专区 | 天天拍夜夜添久久精品大 | 精品 日韩 国产 欧美 视频 | 成 人 网 站国产免费观看 | 午夜精品一区二区三区的区别 | 无码人妻少妇伦在线电影 | 中文精品久久久久人妻不卡 | 免费无码av一区二区 | 亚洲国产欧美国产综合一区 | 欧洲欧美人成视频在线 | 亚洲色大成网站www | 大屁股大乳丰满人妻 | 高清国产亚洲精品自在久久 | 在教室伦流澡到高潮hnp视频 | 奇米影视888欧美在线观看 | 亚洲国产高清在线观看视频 | 久久精品人妻少妇一区二区三区 | 天天躁日日躁狠狠躁免费麻豆 | 欧美自拍另类欧美综合图片区 | 色婷婷香蕉在线一区二区 | 免费观看又污又黄的网站 | 国内揄拍国内精品人妻 | 国产性生交xxxxx无码 | 成人免费视频视频在线观看 免费 | 999久久久国产精品消防器材 | 性欧美熟妇videofreesex | 国产又爽又猛又粗的视频a片 | v一区无码内射国产 | 国产农村乱对白刺激视频 | 久久精品国产99久久6动漫 | 国产激情无码一区二区 | 亚洲成a人片在线观看日本 | 国产精品怡红院永久免费 | 又紧又大又爽精品一区二区 | 精品一二三区久久aaa片 | 少妇被黑人到高潮喷出白浆 | 性欧美videos高清精品 | 日本高清一区免费中文视频 | 漂亮人妻洗澡被公强 日日躁 | 国产精品亚洲а∨无码播放麻豆 | 波多野42部无码喷潮在线 | 国产乱人偷精品人妻a片 | 巨爆乳无码视频在线观看 | 中文字幕人妻丝袜二区 | 又黄又爽又色的视频 | 国产精品久久久一区二区三区 | 午夜福利试看120秒体验区 | 亚洲春色在线视频 | 久久99精品国产麻豆蜜芽 | 18禁黄网站男男禁片免费观看 | 日韩人妻无码一区二区三区久久99 | 精品无码一区二区三区爱欲 | 噜噜噜亚洲色成人网站 | 午夜精品一区二区三区在线观看 | 大胆欧美熟妇xx | 亚洲 高清 成人 动漫 | 蜜桃臀无码内射一区二区三区 | 人妻有码中文字幕在线 | 日韩av激情在线观看 | 精品无码一区二区三区爱欲 | 日日天日日夜日日摸 | 国产人成高清在线视频99最全资源 | 日本熟妇浓毛 | 一本久久a久久精品vr综合 | 日本熟妇大屁股人妻 | 少妇性l交大片欧洲热妇乱xxx | 亚洲欧洲无卡二区视頻 | 老头边吃奶边弄进去呻吟 | 国产超碰人人爽人人做人人添 | 亚洲一区二区观看播放 | 国产精品久久久久久亚洲影视内衣 | 国产婷婷色一区二区三区在线 | 97精品国产97久久久久久免费 | 国产人妻久久精品二区三区老狼 | 性生交片免费无码看人 | 波多野结衣高清一区二区三区 | 呦交小u女精品视频 | 国产精品第一区揄拍无码 | 久久精品国产99精品亚洲 | 午夜丰满少妇性开放视频 | 欧美性生交活xxxxxdddd | 大胆欧美熟妇xx | 国产内射老熟女aaaa | 精品亚洲韩国一区二区三区 | 双乳奶水饱满少妇呻吟 | 欧美熟妇另类久久久久久多毛 | 日韩精品久久久肉伦网站 | 中文字幕av无码一区二区三区电影 | 日本精品人妻无码免费大全 | 特大黑人娇小亚洲女 | 天天躁日日躁狠狠躁免费麻豆 | 成人无码精品1区2区3区免费看 | 欧美人与动性行为视频 | 久久www免费人成人片 | 成人性做爰aaa片免费看 | 亚洲a无码综合a国产av中文 | 俺去俺来也www色官网 | 久久亚洲中文字幕无码 | 玩弄中年熟妇正在播放 | 亚洲乱亚洲乱妇50p | 精品一区二区三区波多野结衣 | 亲嘴扒胸摸屁股激烈网站 | 色一情一乱一伦一视频免费看 | 精品无码成人片一区二区98 | 红桃av一区二区三区在线无码av | 国产深夜福利视频在线 | 欧美熟妇另类久久久久久不卡 | 国产成人精品三级麻豆 | 红桃av一区二区三区在线无码av | 亚洲欧美国产精品专区久久 | 97se亚洲精品一区 | 久久久久99精品成人片 | 欧美性生交xxxxx久久久 | 精品国产青草久久久久福利 | 精品无人国产偷自产在线 | 精品厕所偷拍各类美女tp嘘嘘 | 天天av天天av天天透 | 超碰97人人射妻 | 男女性色大片免费网站 | 99er热精品视频 | 图片区 小说区 区 亚洲五月 | 亚洲阿v天堂在线 | 97精品人妻一区二区三区香蕉 | 色狠狠av一区二区三区 | 国产激情综合五月久久 | 亚洲成色www久久网站 | 88国产精品欧美一区二区三区 | 中文字幕av无码一区二区三区电影 | 99视频精品全部免费免费观看 | 久久久久成人精品免费播放动漫 | 在线播放免费人成毛片乱码 | 精品久久综合1区2区3区激情 | 香蕉久久久久久av成人 | 荫蒂被男人添的好舒服爽免费视频 | yw尤物av无码国产在线观看 | 国产后入清纯学生妹 | 久久99精品久久久久婷婷 | 日韩av激情在线观看 | 300部国产真实乱 | 色狠狠av一区二区三区 | 99久久精品午夜一区二区 | 亚洲国产精品久久久天堂 | 鲁一鲁av2019在线 | 亚洲成a人片在线观看日本 | 亚洲综合伊人久久大杳蕉 | 久久 国产 尿 小便 嘘嘘 | 欧美第一黄网免费网站 | 精品国产一区二区三区四区 | 亚洲国产精华液网站w | 国产97人人超碰caoprom | 国产精品亚洲五月天高清 | 少妇被黑人到高潮喷出白浆 | 精品久久综合1区2区3区激情 | 国产成人综合美国十次 | 久久精品中文字幕一区 | 又大又硬又爽免费视频 | 色一情一乱一伦一区二区三欧美 | 国产免费久久久久久无码 | 扒开双腿疯狂进出爽爽爽视频 | 亚洲精品一区二区三区婷婷月 | 野外少妇愉情中文字幕 | 午夜福利试看120秒体验区 | 曰韩少妇内射免费播放 | 天天综合网天天综合色 | 久久精品中文闷骚内射 | 99精品久久毛片a片 | 国产人妻人伦精品 | 免费无码的av片在线观看 | 精品国产精品久久一区免费式 | 性欧美videos高清精品 | 日日摸夜夜摸狠狠摸婷婷 | 日韩精品无码一本二本三本色 | 免费人成网站视频在线观看 | 久久久久成人片免费观看蜜芽 | 欧美真人作爱免费视频 | 色诱久久久久综合网ywww | 久久亚洲a片com人成 | 少妇无码av无码专区在线观看 | 国产精品手机免费 | 麻豆国产人妻欲求不满 | 麻豆精品国产精华精华液好用吗 | 少妇性l交大片欧洲热妇乱xxx | 国产无遮挡又黄又爽又色 | 荫蒂添的好舒服视频囗交 | 午夜肉伦伦影院 | 无码av岛国片在线播放 | 国产精品久免费的黄网站 | 国产成人无码a区在线观看视频app | 婷婷五月综合激情中文字幕 | 亚洲国产精品无码一区二区三区 | 国产精品丝袜黑色高跟鞋 | 一本久久a久久精品亚洲 | 国产偷抇久久精品a片69 | 久久97精品久久久久久久不卡 | 18禁黄网站男男禁片免费观看 | 丰满少妇熟乱xxxxx视频 | 18精品久久久无码午夜福利 | 精品一区二区不卡无码av | 少妇性俱乐部纵欲狂欢电影 | 黄网在线观看免费网站 | 国产精品18久久久久久麻辣 | 疯狂三人交性欧美 | 国产成人久久精品流白浆 | 成人女人看片免费视频放人 | 亚洲国产av精品一区二区蜜芽 | 国产精品无码成人午夜电影 | 久久精品国产99久久6动漫 | 日韩无码专区 | 精品无码国产自产拍在线观看蜜 | 久久99精品国产麻豆蜜芽 | 色偷偷av老熟女 久久精品人妻少妇一区二区三区 | 国产区女主播在线观看 | aⅴ在线视频男人的天堂 | 乱中年女人伦av三区 | 亚洲中文字幕乱码av波多ji | 性色av无码免费一区二区三区 | 亚洲精品综合一区二区三区在线 | 中文字幕人妻丝袜二区 | 日韩人妻无码中文字幕视频 | 好爽又高潮了毛片免费下载 | 久久zyz资源站无码中文动漫 | 狠狠色噜噜狠狠狠狠7777米奇 | 18禁黄网站男男禁片免费观看 | ass日本丰满熟妇pics | 中文字幕av伊人av无码av | aⅴ在线视频男人的天堂 | 夜夜影院未满十八勿进 | 亚洲精品一区二区三区婷婷月 | 亚洲成a人片在线观看无码 | 精品无码成人片一区二区98 | 国产乱人偷精品人妻a片 | 午夜男女很黄的视频 | 久久精品女人天堂av免费观看 | 人妻有码中文字幕在线 | 亚洲日本va午夜在线电影 | 狠狠cao日日穞夜夜穞av | 蜜桃臀无码内射一区二区三区 | 少女韩国电视剧在线观看完整 | 欧美丰满熟妇xxxx | 久久精品视频在线看15 | 免费无码肉片在线观看 | 亚洲熟妇色xxxxx欧美老妇y | 无码毛片视频一区二区本码 | 熟女俱乐部五十路六十路av | 久久久久久av无码免费看大片 | 99国产精品白浆在线观看免费 | 美女黄网站人色视频免费国产 | 亚洲国精产品一二二线 | 成熟妇人a片免费看网站 | 精品无码国产自产拍在线观看蜜 | 99久久精品国产一区二区蜜芽 | 久久99精品久久久久久动态图 | 荫蒂添的好舒服视频囗交 | 久久精品国产99久久6动漫 | 亚洲综合伊人久久大杳蕉 | 亚洲精品鲁一鲁一区二区三区 | 狂野欧美性猛xxxx乱大交 | 国产猛烈高潮尖叫视频免费 | 国产xxx69麻豆国语对白 | 亚洲国产精品久久久久久 | 日韩视频 中文字幕 视频一区 | 激情内射日本一区二区三区 | 人妻熟女一区 | 欧美成人高清在线播放 | 偷窥日本少妇撒尿chinese | 少妇高潮一区二区三区99 | 草草网站影院白丝内射 | 东京无码熟妇人妻av在线网址 | 捆绑白丝粉色jk震动捧喷白浆 | 最新国产乱人伦偷精品免费网站 | 毛片内射-百度 | 55夜色66夜色国产精品视频 | 欧洲vodafone精品性 | 国产精品久久国产三级国 | 乱码av麻豆丝袜熟女系列 | 国产成人精品必看 | 国产精品久久福利网站 | 国产黑色丝袜在线播放 | 真人与拘做受免费视频 | 成熟女人特级毛片www免费 | 狠狠躁日日躁夜夜躁2020 | 国产亚洲精品久久久闺蜜 |