欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

javascript:void(0)的問題使用探討

 更新時間:2014年04月10日 15:25:33   作者:  
想做一個鏈接點擊后不做任何事情,方法有很多,不過不利于用戶體驗,javascript:void(0)可以有效解決這個問題
在做頁面時,如果想做一個鏈接點擊后不做任何事情,或者響應(yīng)點擊而完成其他事情,可以設(shè)置其屬性 href = "#",但是,這樣會有一個問題,就是當頁面有滾動條時,點擊后會返回到頁面頂端,用戶體驗不好。

目前有如下幾種解決辦法:
1)點擊鏈接后不做任何事情
復(fù)制代碼 代碼如下:

<a href="javascript:void(0);" >test</a>
<a href="javascript:;" >test</a>
<a href="####" >test</a> //使用2個到4個#,見的大多是"####",也有使用"#all"等其他的

2)點擊鏈接后,響應(yīng)用戶自定義的點擊事件
復(fù)制代碼 代碼如下:

<a href="javascript:void(0)" onclick="doSomething()">test</a>
<a href="#" onclick="doSomething();return false;">什么問題都解決了,包括瀏覽器不兼容問題</a> //或者直接使用href=""
<a href="#" onclick="alert();event.returnValue=false;">test</a>

說明:
1.javascript:void(0)這種偽協(xié)議,少寫的好,如果你看過一些web標準的書就知道為什么了。(不懂,原話摘的,暫做記錄)
2.鏈接(href)直接使用javascript:void(0)在IE中可能會引起一些問題,比如:造成gif動畫停止播放等,所以,最安全的辦法還是使用“####”。為防止點擊鏈接后跳轉(zhuǎn)到頁首,onclick事件return false即可。
3.如果僅僅是想鼠標移過,變成手形,可以使用
復(fù)制代碼 代碼如下:

<span style="cursor:pointer" onclick="foo()">Click Me!</span>

void是javascript的操作符,意思是:只執(zhí)行表達式,但沒有返回值,
void 操作符用法格式如下:
復(fù)制代碼 代碼如下:

javascript:void (expression)
javascript:void expression

為了程序風格良好,建議使用第二種帶上括號的
我們可以使用void操作符指定超級鏈接,如javascript:void(document.form.submit())。表達式會被計算但是不會在當前文檔處裝入任何內(nèi)容,void(0)計算為0,但在JavaScript上沒有任何效果,也就是說 <a href="javascript:void(0)">的效果同<a href="javascript:void(1)">的效果是一樣的。
關(guān)鍵是只要知道void是javascipt自身的操作符,它表示的是只執(zhí)行表達式,但沒有返回值!

另外頁面會自動調(diào)回頂端,是因為"#"默認的瞄點位置是top,所以會出現(xiàn)這種情況。

相關(guān)文章

  • Ionic如何實現(xiàn)下拉刷新與上拉加載功能

    Ionic如何實現(xiàn)下拉刷新與上拉加載功能

    在日常項目開發(fā)中我們經(jīng)常見到下拉刷新上拉加載的功能,接下來通過本文給大家介紹ionic如何實現(xiàn)下拉刷新與上拉加載的相關(guān)資料,需要的朋友可以參考下
    2016-06-06
  • JavaScript動態(tài)添加列的方法

    JavaScript動態(tài)添加列的方法

    這篇文章主要介紹了JavaScript動態(tài)添加列的方法,實例分析了javascript操作table表單的技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-03-03
  • js和jQuery以及easyui實現(xiàn)對下拉框的指定賦值方法

    js和jQuery以及easyui實現(xiàn)對下拉框的指定賦值方法

    下面小編就為大家分享一篇js和jQuery以及easyui實現(xiàn)對下拉框的指定賦值方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-01-01
  • layer.alert回調(diào)函數(shù)執(zhí)行關(guān)閉彈窗的實例

    layer.alert回調(diào)函數(shù)執(zhí)行關(guān)閉彈窗的實例

    今天小編就為大家分享一篇layer.alert回調(diào)函數(shù)執(zhí)行關(guān)閉彈窗的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-09-09
  • Javascript中從學習bind到實現(xiàn)bind的過程

    Javascript中從學習bind到實現(xiàn)bind的過程

    這篇文章主要介紹了Javascript中從學習bind到實現(xiàn)bind的過程,有興趣的朋友跟著學習下吧。
    2018-01-01
  • JavaScript中常見的Polyfill介紹

    JavaScript中常見的Polyfill介紹

    在多姿多彩的JavaScript世界,Polyfill如同一座架在瀏覽器兼容性鴻溝之上的橋梁,本文將介紹常見的JavaScript Polyfill兼容方案,并舉例說明它們的應(yīng)用,需要的可以參考下
    2023-12-12
  • javascript DOM編程實例(智播客學習)

    javascript DOM編程實例(智播客學習)

    最近一直在努力學習DOM編程這塊,這是目前成就感最強烈的一塊了,畢老師很認真的給我們講解了相關(guān)知識,并在網(wǎng)上找了很多做的非常棒的網(wǎng)頁作為例程給我們進行講解
    2009-11-11
  • JS解析json數(shù)據(jù)并將json字符串轉(zhuǎn)化為數(shù)組的實現(xiàn)方法

    JS解析json數(shù)據(jù)并將json字符串轉(zhuǎn)化為數(shù)組的實現(xiàn)方法

    json數(shù)據(jù)在ajax實現(xiàn)異步交互時起到了很重要的作用,他可以返回請求的數(shù)據(jù),然后利用客戶端的js進行解析,這一點體現(xiàn)出js的強大,本文介紹JS解析json數(shù)據(jù)并將json字符串轉(zhuǎn)化為數(shù)組的實現(xiàn)方法,需要了解的朋友可以參考下
    2012-12-12
  • ES6基礎(chǔ)之展開語法(Spread syntax)

    ES6基礎(chǔ)之展開語法(Spread syntax)

    這篇文章主要介紹了ES6基礎(chǔ)之展開語法(Spread syntax),主要介紹了擴展語法的使用,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-02-02
  • JavaScript中forEach和map方法的使用與區(qū)別

    JavaScript中forEach和map方法的使用與區(qū)別

    眾所周知map和forEach是數(shù)組的操作方法,下面這篇文章主要給大家介紹了關(guān)于JavaScript中forEach和map方法的使用與區(qū)別,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2023-02-02

最新評論