日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Javascript函数和事件

發布時間:2025/6/15 java 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Javascript函数和事件 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、默認函數

JavaScript提供了一些默認的函數

?

編碼函數escape():將非字母、數字字符轉換成ASCII

譯碼函數unescape():將ASCII碼轉換成字母、數字字符

求值函數eval()

數值判斷函數isNaN():判斷一個值是否為非數值類型

整數轉換函數parseInt():將不同進制(二、八、十六進制)的數值轉換成十進制整數

浮點數轉換函數parseFloat():將數值字串轉換成浮點數

1eval()函數

求值函數eval()的格式為:eval(<表達式>)

下面的例子將用eval函數得到一個文本框的值,

然后通過點擊按鈕彈出一個對話框將其輸出。

<script>

function?show(obj)

{

??? var?str=eval("document.Form."+obj+".value");

??? alert(“你輸入的姓名是:”+str);

}

</script>

<form?name="Form"?id="Form">

????姓名:

????<input?name="name"?type="text"?value="韋小寶">

???<input?name="button"?type="button"?value="提交"?onClick=show("name")>

</form>

?

2isNaN()函數

數值判斷函數isNaN()的格式:isNaN(<>)

?

???????下例中isNaN函數將判斷變量是否不是數值,并輸出判斷結果。

<script>

????var?x=15;

????var?y="黃雅玲";

??? document.write("<LI>x不是數值嗎?",isNaN(x));

??? document.write("<LI>y不是數值嗎?",isNaN(y));

</script>

3parseInt()函數

???????整數轉換函數parseInt()的功能是將不同進制(二、八、十六)的數值轉換成十進制整數。

???????格式:parseInt(數值字串[,底數])

???????下面演示了將一個二進制數和一個十六進制數轉換成十進制數。

?

<script>

??? document.write("1101<sub>2</sub>=",parseInt("1101",2),"<sub>10</sub><br>");

??? document.write("BFFF<sub>16</sub>=",parseInt("BFFF",16),"<sub>10</sub><br>");

</script>

4parseFloat()函數

parseFloat()是浮點數轉換函數,它將數值字串轉換成浮點數。

???????格式:parseFloat(數值字串)

<script>

??? document.write(parseInt("3.1234A56"),"<br>");

??? document.write(parseFloat("3.1234A56"),"<br>");

</script>

5、自定義函數

函數是獨立于主程序的、具有特定功能的一段程序代碼塊。

?

JavaScript函數定義

?

function?函數名(參數表,變元)

{

???????函數體;

?????? return?表達式;

}

?

說明:

·當調用函數時,所用變量或字面量均可作為變元傳遞。

·函數由關鍵字function定義。

·函數名:定義自己函數的名字。

·參數表,是傳遞給函數使用或操作的值,其值可以是常量、變量或其它表達式。

·通過指定函數名(實參)來調用一個函數。

·函數的返回值是可選項,如果需要返回值,就必須使用return語句將值返回。

·函數名對大小寫是敏感的。

約定:

·函數名:易于識別(同變量命名規則)。

·程序代碼:模塊化設計。

·函數位置:按邏輯順序,集中置頂。

?

6、函數中的形式參數

在函數的定義中,我們看到函數名后有參數表,這些參數變量可能是一個或幾個。那么怎樣才能確定參數變量的個數呢?在JavaScript中可通過arguments.length來檢查參數的個數。

<script>

???????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);

????</script>

函數的調用

格式:函數名([參數[,參數...]])

下面的例子演示了沒有返回值的函數的定義及調用。

?

<script>

????function?showName(name)

????{

???????document.write("我是"+name);

????}

????showName("玲玲");?//函數調用

</script>

???????上例中的function showName(name)為函數定義,其中括號內的name是函數的形式參數,這一點與C語言是完全相同的,而showName(“玲玲”)則是對函數的調用,用于實現需要的功能。

???????下面的例子演示了帶返回值的函數的定義及調用。

<script>

????function?showName(name)

????{

???????str="我是"?+name;

???????return?str;

????}

????document.write(showName("周伯通"));

</script>

?

二、函數與事件

事件驅動及事件處理的基本概念

?

?????? JavaScript是基于對象(Object-Based)的語言,這與Java不同,Java是面向對象的語言。而基于對象的基本特征,就是采用事件驅動(Event Driven)。通常鼠標或熱鍵的動作我們稱之為事件(Event),而由鼠標或熱鍵引發的一連串程序的動作,稱之為事件驅動(Event Driver)。而對事件進行處理的程序或函數,我們稱之為事件處理程序(Event Handler)。

事件處理程序

???????瀏覽器響應某個事件,實現用戶的交互操作而進行的處理(過程)。

???????事件處理程序的調用:瀏覽器等待用戶的交互操作,并在事件發生時,自動調用事件處理程序(函數),完成事件處理過程。

?

?????? HTML標簽屬性:

???????格式:<tag on事件=“<語句組>|<函數名>”>

由于在JavaScript中對象事件的處理通常由函數(function)來完成,且其基本格式與函數一樣,所以可以將前面所介紹的所有函數作為事件處理程序。

格式如下:

function?事件處理名(參數表)

{

???????事件處理語句集;

?????? ……

}

三、事件驅動

JavaScript事件驅動中的事件是通過鼠標或熱鍵的動作引發的。它主要有以下幾個事件

單擊事件onClick

改變事件onChange

選中事件onSelect

獲得焦點事件onFocus

失去焦點onBlur

載入文件onLoad

鼠標指示事件onMouseOver

提交事件onSubmit

1、單擊事件onClick

???????當用戶單擊鼠標按鈕時,產生onClick事件。同時onClick指定的事件處理程序或代碼將被調用執行。通常在下列基本對象中產生單擊事件:

button(按鈕對象)

checkbox(復選框)或(檢查列表框)

radio(單選鈕)

reset buttons(重要按鈕)

submit buttons(提交按鈕)

比如,可以通過下面的按鈕激活change()函數,當然change()函數是需要另外提供的:

?

<form>

????<input?type="button"?value=“”?onClick="change()">

</form>

  在onClick等號后,可以使用自己編寫的函數作為事件處理程序,也可以使用JavaScript的內部函數,還可以直接使用JavaScript的代碼等。

<body>

????<form>

???????請輸入基本資料:<br>

???????姓名:

???????<input?type="text"?name="usr"?size="8">

???????<input?type="button"?value="請單擊" ??????????????onClick="alert('謝謝你的填寫...')">

????</form>

</body>點擊請單擊按鈕后將引發onClick事件,即彈出謝謝你的填寫...”的對話框。

2、改變事件onChange

???????當一個texttextarea域失去焦點并更改值時觸發onChange事件,當select下拉選項中的一個選項狀態改變后也會引發該事件。

???????事件適用對象fileUploadselecttexttextarea

???????下面的例子在文本框的內容改變后,將彈出一個顯示內容即將改變!的對話框:

???????<form>

???????<input?type="text"?name="Test"?value="Test" ????????????????onChange="alert('內容即將改變!')">

????</form>

?

???????頁面運行后在文本框中輸入內容,即內容發生改變,然后將鼠標拖走,就會引發.

3onChange事件

選中事件onSelect

???????texttextarea對象中的文字被選中后(文字高亮顯示),引發該事件。

???????下面的例子中,當文本框的內容被選中后,將彈出一個顯示內容已被選中!”的對話框:

???????<form>

???????<input?type="text"?name="Test"?value="Test" ????????????onSelect="alert('內容已被選中!')">

????</form>

4、獲得焦點事件onFocus

當用戶單擊texttextarea以及select對象時,產生該事件。此時該對象成為前臺對象。

?

???????該事件適用對象:buttoncheckboxfileUploadlayerpasswordradioresetselectsubmittexttextareawindow

?

???????下面的例子中,當鼠標移到文本域的地方即獲得焦點時,立刻彈出一個提示已經獲得焦點!”的對話框:

???????<input?type="textarea"?value=""?name="valueField"?onFocus="alert('已經獲得焦點!')">

5、失去焦點onBlur

text對象或textarea對象以及select對象不再擁有焦點、而退到后臺時,引發該事件,onBlur事件與onFocus事件是一個對應的關系。

???????該事件適用對象:buttoncheckboxfileUploadlayerpasswordradioresetselectsubmittexttextareawindow

?

???????下面的例子中,瀏覽器的起始背景色為“lightgrey”,當鼠標移到文本域的地方即獲得焦點時,瀏覽器的背景色變為“red”,當鼠標焦點移動到瀏覽器的其他地方時,瀏覽器的背景色變為“white”

<body?bgColor="lightgrey">

????<form>

???????<input?type="text" ???????????????????????onFocus="document.bgColor='red'"?????? ????onBlur="document.bgColor='white'"?>

????</form>

</body>

6、載入文件onLoad

當文件載入時,產生該事件。onLoad的作用就是在首次載入一個文檔時檢測cookie的值,并用一個變量為其賦值,使它可以被源代碼使用。

???????下面的代碼在文檔打開時,將彈出提示建議瀏覽器的分辨率:800x600”的對話框。

<script>

????function?show()

????{

?????? var?str="建議瀏覽器的分辨率:800x600";

?????? alert(str);

????}

</script>

<body?onload="show();">

7、鼠標指示事件onMouseOver

當鼠標指到相應的位置時引發的事件。

事件適用對象:layerlink

???????下面的例子中,用href“Click me”加上一個超鏈接,當鼠標指到超鏈接“Click me”時,將在狀態欄提示“Click this if you dare!”

<a?href="http://www.myhome.com/"

????onMouseOver="window.status='Click this if you dare!'; return true">

Click me

</a>

當鼠標指到文字“Click me”上時,將在狀態欄顯示提示文字“Click this if you dare!”

8、提交事件onSubmit

它是在點擊提交按鈕時引發的事件。

事件適用的對象:form

語法:onSubmit="handlerText"

???????下面的例子中,在點擊提交按鈕時,就會彈出一個你確認提交嗎?”的提示對話框。

<form?onSubmit="alert('你確認提交嗎?')">

???????<input?type="text"?name="txt"?value="測試文本">

???????<input?type="submit"?value="提交">

????</form>

補充:定時器

定時器是用以指定在一段特定的時間后執行某段程序。常用的定時器函數有以下幾個:

setTimeout():定時器

clearTimeout():終止定時器

setInterval():設置定時器

clearInterval():取消使用setInterval()設置的定時器

總結

以上是生活随笔為你收集整理的Javascript函数和事件的全部內容,希望文章能夠幫你解決所遇到的問題。

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