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

首頁 > 編程 > JavaScript > 正文

return false,對阻止事件默認動作的一些測試代碼

2019-11-21 00:07:42
字體:
來源:轉載
供稿:網友
首先頁面上有一個 <textarea id="test"></textarea>
我們為其綁定以下事件
復制代碼 代碼如下:

test.onkeydown = function(){
return false;
}

test.onkeyup = function(){
return false;
}

test.onkeypress = function(){
return false;
}

我們分別注釋掉其中的兩個事件,每次測試僅綁定一個事件。
很明顯我們每個函數都返回false,如果返回值可以阻止事件默認動作,那么文本框將無法輸入任何內容。
看下面我測試的結果,注意紅的部分。
最后我分別把事件綁定兩次,每次返回false看是否能阻止默認動作。
還是用了一個a標記測試onclick 返回false 是否跳轉。
偵聽事件返回 false 是否阻止事件默認動作
 chromeIE-8firfoxoperSafari
onkeydownyesyesyesnoyes
onkeyupnonononono
onkeypressyesyesyesyesyes
onclickyesyesyesyesyes
keydown * 2no取最后的FN結果nonono
keypress * 2no取最后的FN結果nonono
click * 2no取最后的FN結果nonono
e.preventDefault();yesnoyesyes(keydown:no)yes
e.returnValue = falsenoyesnonono

可以看出瀏覽器表現確實不太一樣,當然IE是最麻煩的東西了。
最意外的是在oper中 綁定down 返回false,居然也不能阻止默認動作。
所以以后在寫要阻止瀏覽器默認動作的時候,還用標準的方法比較好。(后面我提供了)
不然在多人協作的工作中,會相當麻煩。
演示的deom 有需要的可以發郵件給我。我就不貼上來了。
復制代碼 代碼如下:

/* * 用下面的代碼就不會發生悲劇了
* 最終結論
* E(e).stop(); 阻止時間冒泡
* E(e).prevent();阻止時間默認行為
*/
var E = function(e){
e = window.event || e;
return {
stop: function() {
if (e && e.stopPropagation) e.stopPropagation();
else e.cancelBubble = true
},
prevent: function() {
if (e && e.preventDefault) e.preventDefault();
else e.returnValue = false
}
}
}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 清镇市| 开封市| 宝丰县| 客服| 河津市| 襄城县| 昌都县| 济阳县| 碌曲县| 静乐县| 姜堰市| 冷水江市| 始兴县| 托里县| 阳山县| 开封市| 石楼县| 来凤县| 宿州市| 新沂市| 梁平县| 遂昌县| 吴江市| 泸州市| 灵宝市| 项城市| 会同县| 西宁市| 怀集县| 兴化市| 玉林市| 屏山县| 分宜县| 大关县| 奉新县| 仪陇县| 南乐县| 监利县| 福州市| 清徐县| 如东县|