国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > JavaScript > 正文

淺析JavaScript事件和方法

2019-11-20 13:05:04
字體:
供稿:網(wǎng)友

單擊一個(gè)超鏈接觸發(fā)事件

1.用a標(biāo)簽的onclick

<a href="#" onclick="js代碼">

這種寫法呢,存在一種弊端,就是點(diǎn)擊后會(huì)刷新一次頁(yè)面,回到頁(yè)面頂端。

想不刷新如何做的呢?

復(fù)制代碼 代碼如下:

<a href="javascript:void(0)" onclick="js代碼">

2.#與javascript:void(0)的區(qū)別

超鏈接為“死鏈”時(shí),使用#與javascript:void(0);的區(qū)別。

Void(0)沒有用的值,不會(huì)去任何地方,就沒有意義了

而#會(huì)刷新一次當(dāng)前頁(yè)面。

3.再或者、用a標(biāo)簽的href

<a href="javascript:  js代碼   ">

只有超鏈接的href中的JavaScript中才需要加“javascript:”,

因?yàn)樗皇鞘录前选眏avascript:”看成像“http:”、“ftp:”、“thunder://”、“ed2k://”、“mailto:”一樣的網(wǎng)絡(luò)協(xié)議,交由js解析引擎處理。

方法的特別強(qiáng)調(diào)

1.不要另起一行

一般在js中編寫大括號(hào)都是直接跟在后面而不要另起一行,

原因是js會(huì)在語(yǔ)句末尾自動(dòng)增加”分號(hào)”,如果將大括號(hào)另起一行,則return語(yǔ)句后自動(dòng)增加“分號(hào)”后,返回值就變成了undefined了。

2.不需要聲明返回值類型

不需要聲明返回值類型、參數(shù)類型。函數(shù)定義以function開頭。

JavaScript中不像C#和java那樣要求所有路徑都有返回值沒有返回值就是undefined。

3.沒有方法重載

JavaScript中沒有方法重載。

方法中寫參數(shù)叫命名參數(shù)

用戶調(diào)用計(jì)算多個(gè)數(shù)的和的方法,如何獲取方法中有多少個(gè)參數(shù)呢?

請(qǐng)使用arguments對(duì)象!

匿名函數(shù)

1.方式一

復(fù)制代碼 代碼如下:

var f1=function(p1,p2){ return p1+p2; };//將函數(shù)賦值給一個(gè)變量

匿名函數(shù)沒法調(diào)用,只能賦值給一個(gè)變量,由于是賦值語(yǔ)句,后面要加分號(hào)

應(yīng)用:

復(fù)制代碼 代碼如下:

document.getElementById(‘btn').onclick=function(){}

2.方式二

復(fù)制代碼 代碼如下:

(function(p1,p2){alert(p1+p2);})(20,30);

3.方式三

復(fù)制代碼 代碼如下:

var m1=new Function(“p1”,”p2”,”p3”,”return p1+p2+p3”);
alert(m1(1,2,3));性能低

這種匿名函數(shù)的用法在jQuery中的非常多

擴(kuò)展方法prototype

通過類對(duì)象的prototype設(shè)置擴(kuò)展方法,

擴(kuò)展方法的聲明要在使用擴(kuò)展方法之前執(zhí)行。JS的函數(shù)沒有專門的函數(shù)默認(rèn)值的語(yǔ)法,但是可以不給參數(shù)傳值,不傳值的參數(shù)值就是undefined,自己做判斷來給默認(rèn)值。

復(fù)制代碼 代碼如下:

var msg ='xiaoming@111.com';
String.prototype.isEmail = function(){
return this.indexof('@')!= -1 ?true:false;
};
alert(msg.isEmail);

事件

1.調(diào)用事件

2.注冊(cè)事件

一定是在頁(yè)面加載完成了以后,才能給頁(yè)面的元素注冊(cè)事件。

所以 onload = function(){

     //在這里注冊(cè)事件

};

頁(yè)面加載事件

復(fù)制代碼 代碼如下:

  <script type="text/javascript">
       //刷新
       //location.reload();
          onload=function(){
           alert("頁(yè)面加載了");
          };
          onunload =function(){
           alert("頁(yè)面關(guān)閉了");
          };
          onbeforeunload= function(){
             alert("頁(yè)面關(guān)閉之前觸發(fā)");
          };
  </script>

以上就是本文的全部?jī)?nèi)容了,希望能夠讓大家對(duì)javascript的事件和方法有新的認(rèn)識(shí)

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 孝感市| 化隆| 青冈县| 临沭县| 湄潭县| 武定县| 元朗区| 仙游县| 呈贡县| 北碚区| 浏阳市| 邻水| 重庆市| 菏泽市| 九龙城区| 阳东县| 中西区| 福安市| 阿拉善左旗| 龙里县| 凉城县| 那曲县| 永登县| 西宁市| 哈巴河县| 无极县| 神木县| 祁连县| 阿克陶县| 兰州市| 定兴县| 葵青区| 武宁县| 鹰潭市| 和硕县| 始兴县| 丰宁| 弥渡县| 湟中县| 南华县| 大邑县|