javascript - html中阻止默認事件
問題描述
<!DOCTYPE HTML><html lang='en-US'><head> <meta charset='UTF-8'> <title></title></head><body> <a onclick = 'return f1()'>騰訊</a> <script type='text/javascript'>//定義f1函數function f1(){ console.log( ’騰訊被點擊了’); return false;}</script></body></html>
問題解答
回答1:onclick是個函數,不return就是沒有返回值,怎么阻止默認事件?跟你f1是否return沒有關系
回答2:能不能阻止默認行為是看onclick函數的返回值,有return的時候,返回f1的返回值false。
不寫return的onlick處理函數如下,此時的返回值因為沒有return語句,所以默認返回undefined
瀏覽器會對頁面元素的某些元素產生默認行為。比如一個 a 鏈接點擊之后,會自動跳轉至對應 href 地址網頁去;又如一個表單,當你點擊 提交 按鈕之后,默認會將數據發送至 form 的 action 地址去。這些都是瀏覽器的處理頁面元素的默認行為,當 onlick = 'return false' 時,會禁止掉這種瀏覽器的默認行為。故而你的這段代碼并不會跳轉至 騰訊首頁 去。<a onclick = 'return f1()'>騰訊</a> function f1(){console.log( ’騰訊被點擊了’);return false; }
另外,你應該善用搜索引擎,百度一下,第一條就可以解決掉你的困惑,地址如下:https://zhidao.baidu.com/ques... 。望共同進步,共勉之~
回答4:<a onclick='myFun(event)'>123</a>function myFun(e) { e.preventDefault(); console.log(12313123)}
這樣豈不是更簡單。。。。用e.preventDefault();來阻止
還有,既然要阻止,干嘛還要在頁面上寫上鏈接。。。
回答5:onclick屬性的值是js代碼,return f1(),如果f1()返回false的話,return f1()就代表return false。當然,這個return是有點多余,但是語法也沒錯。只要語法沒錯,實現了就行。
相關文章:
1. 查詢mysql數據庫中指定表指定日期的數據?有詳細2. mysql - 怎么生成這個sql表?3. mysql儲存json錯誤4. php - 公眾號文章底部的小程序二維碼如何統計?5. mysql - 表名稱前綴到底有啥用?6. mysql - 數據庫表中,兩個表互為外鍵參考如何解決7. Navicat for mysql 中以json格式儲存的數據存在大量反斜杠,如何去除?8. 在mybatis使用mysql的ON DUPLICATE KEY UPDATE語法實現存在即更新應該使用哪個標簽?9. mysql - 數據庫建字段,默認值空和empty string有什么區別 11010. sql語句 - 如何在mysql中批量添加用戶?
