對於 <a href="javascript:void(0)" οnclick="logout()">安全退出</a>javascript
所提出的問題:「爲何要在代碼中加入<a href="javascript:void(0)" οnclick="logout()">這樣的代碼呢?javascript:void(0)這個的做用是什麼?若是不想讓這個超連接跳轉爲何不直接取消掉href屬性呢?」java
①<a href="javascript:void(0)" οnclick="xxx()">安全
答:<a>標籤這樣的形式意在讓<a>
的行爲僅靠用JavaScript來定義。 spa
②javascript:void(0) 的 做用code
答: 一. void 是 JavaScript 中很是重要的關鍵字,該操做符指定要計算一個表達式可是不返回值。void(0) 計算爲 0,當用戶連接時,Javascript 上沒有任何效果。blog
二. 目的是爲了阻止a連接的默認行爲(默認行爲爲跳轉到連接的頁面),方便讓js綁定事件,不受干擾;事件
③ 若是不想讓這個超連接跳轉爲何不直接取消掉href屬性呢?"ip
答: a標籤具備跳轉做用;不取消是由於 a
標籤中 href
屬性是必須的(沒有這個屬性的話, a
的默認樣式不會表現出來)。 class
④<A href="javascript:void(0)"> 與 <A href="#"> 區別?cli
答:兩者都表明<a>標籤的空連接
<A href="javascript:void(0)">點擊</a> 點擊連接後不會回到網頁頂部
<A href="#">點擊</a> # 包含了一個位置信息,默認的錨是#top 也就是網頁的上端。 點擊後會回到網面頂部
⑤<a href="javascript:void(0)" οnclick="logout()">安全退出</a>
目的在於實現οnclick=""中的功能,此例中即實現logout()用戶退出功能。 加了javascript:void(0),點擊「安全退出」四個字所表明的連接後,頁面不動(即 不總體刷新頁面的狀況下)只執行連接所實現的功能。