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

首頁 > 編程 > HTML > 正文

html中關于a標簽href屬性中的一個很少人知道的坑

2020-03-24 16:53:57
字體:
來源:轉載
供稿:網友
由于公司需要,小菜最近在搞app web開發,目前只有ios和android版本,雖然僅此兩個版本,但是依然要考慮瀏覽器兼容問題,因為android和ios默認瀏覽器內核是不一樣的。

先說說兼容性問題是什么。假如有這樣一個URL:

 http://www.kpdown.com/search?name=Ben Nadel

此URL后邊有一個name參數,只不過參數的值竟然帶了空格,這樣的鏈接,直接用android瀏覽器訪問,是沒有問題的,但用ios的瀏覽器訪問,這就是一個錯誤的URL,會報錯的!

所以,我們會想到編碼,name參數的值,可以用encodeURIComponent()方法進行編碼,然后再拼接到URL上,這樣就安全了(encodeURIComponent是js原生方法,直接用即可)。

然后,我們可以這樣利用超鏈接

 a href= javascript:openURL( http://www.kpdown.com/search?name=Ben%20Nadel 查詢 /a 

利用openURL這個js方法進行頁面跳轉(假設有一個openURL方法,其中不涉及任何解碼操作)。

這段代碼在android中運行正常,但到了ios中,依然報錯,的確是編碼了,為什么還是不行呢?

請看如下代碼:

 a href= javascript:openURL( http://www.kpdown.com/search?name=Ben%20Nadel 測試href /a  a href= javascript:; quot;javascript:openURL( http://www.kpdown.com/search?name=Ben%20Nadel 測試onclick /a  script  function openURL(url){ * 測試href --print-- http://www.kpdown.com/search?name=Ben Nadel * 測試onclick --print-- http://www.kpdown.com/search?name=Ben%20Nadel console.log(url); /script 

由此可見:“萬惡”的href屬性,在調用openURL傳參時自動解碼,而onclick屬性則保持參數原封不動。

因此,小菜強烈不推薦使用a標簽的href屬性調用js,onclick方法非常的科學,非常的穩定,非常的正確,href的本意就是用來跳轉URL,就不要用它來執行js啦。其實更好的做法是綁定事件,那樣代碼更好管理,看起來也整潔。

以上就是html中關于a標簽href屬性中的一個很少人知道的坑的詳細內容,html教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 大连市| 美姑县| 龙江县| 健康| 弥勒县| 新竹县| 青海省| 蛟河市| 内江市| 休宁县| 西吉县| 保定市| 繁昌县| 资兴市| 新干县| 大同市| 五原县| 武威市| 甘泉县| 祁东县| 姜堰市| 苍南县| 合阳县| 安福县| 开化县| 大竹县| 突泉县| 唐山市| 灯塔市| 江源县| 阿鲁科尔沁旗| 伊宁县| 黄陵县| 汪清县| 黔东| 高雄县| 恩平市| 策勒县| 图木舒克市| 周口市| 随州市|