在平常工做總會遇到在<a>標籤中執行js代碼的狀況 如今作一個總結,但願對你們有一個幫助。javascript
一、a href="javascript:js_method();" java
這是咱們平臺上經常使用的方法,可是這種方法在傳遞this等參數的時候很容易出問題,並且javascript:協議做爲a的href屬性的時候不只會致使沒必要要的觸發window.onbeforeunload事件,在IE裏面更會使gif動畫圖片中止播放。瀏覽器
W3C標準不推薦在href裏面執行javascript語句。函數
二、a href="javascript:void(0);" onclick="js_method()"動畫
這種方法是不少網站最經常使用的方法,也是最周全的方法,onclick方法負責執行js函數,而void是一個操做符,void(0)返回undefined,地址不發生跳轉。並且這種方法不會像第一種方法同樣直接將js方法暴露在瀏覽器的狀態欄。網站
三、a href="javascript:;" onclick="js_method()" this
這種方法也是網上很常見的代碼,#是標籤內置的一個方法,表明top的做用。因此用這種方法點擊後網頁後返回到頁面的最頂端。<a href="#"></a> 若是頁面有滾動條 點擊後網頁後返回到頁面的最頂端。事件
四、a href="#" onclick="js_method();return false;"圖片
這種方法點擊執行了js函數後return false,頁面不發生跳轉,執行後仍是在頁面的當前位置。ip