亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為什么方法和屬性直接不能用 || ?

為什么方法和屬性直接不能用 || ?

清風流光 2017-05-04 13:44:03
getElement:function(event){ return?event.target||event.srcElement; }, preventDefalt:function(event){ return?event.preventDefault()||event.returnValue=false; },第二個無效?
查看完整描述

3 回答

已采納
?
會飛的四腳蛇

TA貢獻5條經驗 獲得超3個贊

你的函數寫的有問題:

  1. 取消默認行為并不需要return值。

? 2. 你的preventDefalt函數,如果運行,在現代瀏覽器中(非ie10及以下),只會執行event.returnValue=false;因為event.preventDefault()的結果是undefined---->執行event.returnValue=false,只是給event添加了一個屬性returnValue,并賦值false;

而在ie10及以下中會報錯的,event沒有preventDefault屬性,?event.preventDefault()--->undefined()--->類型錯誤:Uncaught TypeError

可以這樣寫:

preventDefalt:function(event){
????????if(event.preventDefault){
????????????????event.preventDefault();
????????}else{
????????????????event.returnValue=false;
????????}
????}


或者

preventDefalt:function(event){
????????event.preventDefault?event.preventDefault():event.returnValue=false;
????}


查看完整回答
反對 回復 2017-05-04
?
清風流光

TA貢獻8條經驗 獲得超0個贊

這題是送分的....

|| 的優先 =

先比較再等于

右邊加個()就能運行了

查看完整回答
反對 回復 2017-05-04
  • 3 回答
  • 0 關注
  • 1643 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號