a標(biāo)簽href屬性值對onbeforeunload事件的影響

背景

在某些場景下侨艾,我們希望點擊a標(biāo)簽以后不做跳轉(zhuǎn)炎辨,并且能響應(yīng)a標(biāo)簽綁定的事件垫释,常見方法href設(shè)置javascript:;丝格、#### 等,但經(jīng)測試發(fā)現(xiàn)棵譬,這幾種方式在chrome显蝌,ie9上對onbeforeunload事件的觸發(fā)不一致,這里做個測試和總結(jié)订咸。

示例代碼

示例代碼里對幾種不同的方式在chrome,ie下作了測試曼尊。
-- chrome版本:版本 58.0.3029.110
-- ie版本:9.0.8112

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <style type="text/css">
            .container {
                margin-bottom: 64px;
            }
            .content {
                height: 2000px; /*設(shè)置一個比較高的高度,使頁面出現(xiàn)滾動條*/
                background: #f0f0f0;
            }
            .item {
                margin-top: 12px;
            }
        </style>
    </head>

    <body>
        <div class="container">
            <div class="content">
                測試a標(biāo)簽
            </div>
            <div>
                <div class="item"><a href="javascript:void(0);" >test1-使用void</a> </div>
                <div class="item"><a href="javascript:;" >test2-使用javascript:;</a> </div>
                <div class="item"><a href="####" >test3-使用####</a></div>
                <div class="item"><a href="#">test4-使用#</a></div>
                <div class="item"><a class="">test5-不加href屬性</a></div>
                <div class="item"><a href="">test6-href屬性值為空</a></div>
                <div class="item"><a href="tel:18822222222">test7-打電話</a></div>
                <div class="item"><a href="mailto:xxx@163.com">test8-發(fā)郵件</a></div>
            </div>
        </div>
    </body>
    <script type="text/javascript">
        window.onbeforeunload = function(e) {
            e.returnValue = '';
        }
    </script>
</html>

結(jié)論

比較.png

1.使用href="" 與使用href="#" 效果是一樣的脏嚷,都會滾動到頁面頂部
2.a標(biāo)簽不加href屬性涩禀,不會具有a標(biāo)簽的性質(zhì)(hover手形,下劃線)然眼,但可以用css加上標(biāo)簽的默認(rèn)樣式
3.對onbeforeunload的觸發(fā)情況:

  • chrome下,href="" 葵腹、href="tel"高每、href="mailto" 都會觸發(fā)onbeforeunload事件
  • ie下:javascript:void(0); javascript:; href="" 都會觸發(fā)onbeforeunload事件
    so,

4.在希望點擊a標(biāo)簽以后不做跳轉(zhuǎn),并且能響應(yīng)a標(biāo)簽綁定的事件践宴,而頁面綁定了onbeforeunload事件鲸匿,href="####", 以及不設(shè)置href屬性這兩種方式是安全的。(href="#"會有頁面滾動到頂部的效應(yīng))
5.但是阻肩,如果使用了javascript:;的方式带欢,可以在a標(biāo)簽的響應(yīng)事件里加上运授,return false; 或者e.preventDefault() 來解決ie9下頻繁彈出頁面離開提示的問題

Reference

1.onebeforeunload is too enthusiastice in ie9 https://stackoverflow.com/questions/7263309/onbeforeunload-event-is-too-enthusiastic-in-ie9

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市乔煞,隨后出現(xiàn)的幾起案子吁朦,更是在濱河造成了極大的恐慌,老刑警劉巖渡贾,帶你破解...
    沈念sama閱讀 222,104評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件逗宜,死亡現(xiàn)場離奇詭異,居然都是意外死亡空骚,警方通過查閱死者的電腦和手機(jī)纺讲,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,816評論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來囤屹,“玉大人熬甚,你說我怎么就攤上這事±呒幔” “怎么了乡括?”我有些...
    開封第一講書人閱讀 168,697評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長冲簿。 經(jīng)常有香客問我粟判,道長,這世上最難降的妖魔是什么峦剔? 我笑而不...
    開封第一講書人閱讀 59,836評論 1 298
  • 正文 為了忘掉前任档礁,我火速辦了婚禮,結(jié)果婚禮上吝沫,老公的妹妹穿的比我還像新娘呻澜。我一直安慰自己,他們只是感情好惨险,可當(dāng)我...
    茶點故事閱讀 68,851評論 6 397
  • 文/花漫 我一把揭開白布羹幸。 她就那樣靜靜地躺著,像睡著了一般辫愉。 火紅的嫁衣襯著肌膚如雪栅受。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,441評論 1 310
  • 那天恭朗,我揣著相機(jī)與錄音屏镊,去河邊找鬼。 笑死痰腮,一個胖子當(dāng)著我的面吹牛而芥,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播膀值,決...
    沈念sama閱讀 40,992評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼棍丐,長吁一口氣:“原來是場噩夢啊……” “哼误辑!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起歌逢,我...
    開封第一講書人閱讀 39,899評論 0 276
  • 序言:老撾萬榮一對情侶失蹤巾钉,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后趋翻,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體睛琳,經(jīng)...
    沈念sama閱讀 46,457評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,529評論 3 341
  • 正文 我和宋清朗相戀三年踏烙,在試婚紗的時候發(fā)現(xiàn)自己被綠了师骗。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,664評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡讨惩,死狀恐怖辟癌,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情荐捻,我是刑警寧澤黍少,帶...
    沈念sama閱讀 36,346評論 5 350
  • 正文 年R本政府宣布,位于F島的核電站处面,受9級特大地震影響厂置,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜魂角,卻給世界環(huán)境...
    茶點故事閱讀 42,025評論 3 334
  • 文/蒙蒙 一昵济、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧野揪,春花似錦访忿、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,511評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至挣惰,卻和暖如春卧斟,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背憎茂。 一陣腳步聲響...
    開封第一講書人閱讀 33,611評論 1 272
  • 我被黑心中介騙來泰國打工珍语, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人唇辨。 一個月前我還...
    沈念sama閱讀 49,081評論 3 377
  • 正文 我出身青樓,卻偏偏與公主長得像能耻,于是被迫代替她去往敵國和親赏枚。 傳聞我的和親對象是個殘疾皇子亡驰,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,675評論 2 359

推薦閱讀更多精彩內(nèi)容

  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補(bǔ)...
    _Yfling閱讀 13,759評論 1 92
  • <a name='html'>HTML</a> Doctype作用饿幅?標(biāo)準(zhǔn)模式與兼容模式各有什么區(qū)別? (1)凡辱、<...
    clark124閱讀 3,498評論 1 19
  • 請參看我github中的wiki,不定期更新栗恩。https://github.com/ivonzhang/Front...
    zhangivon閱讀 7,133評論 2 19
  • 做人要會察言觀色透乾,更要學(xué)會尊重別人,保護(hù)它人的隱私磕秤。敢將隱私說給你聽的人乳乌,這份信任值得好好珍惜。 不言人難市咆,不戳人...
    虛懷若谷8閱讀 163評論 0 0
  • HBase隨機(jī)宕機(jī)事件處理 & JVM GC回顧-Hbase-about云開發(fā) http://www.about...
    葡萄喃喃囈語閱讀 395評論 0 1