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. css3的背景圖片屬性有沒有把圖中這塊藍框區域(275*230)完整放在60*50區域?怎么寫呢2. javascript - jQuery each 方法第三個參數args 如何解釋?3. javascript - js中遞歸與for循環同時發生的時候,代碼的執行順序是怎樣的?4. 如何分別在Windows下用Winform項模板+C#,在MacOSX下用Cocos Application項目模板+Objective-C實現一個制作游戲的空的黑窗口?5. android - 優酷的安卓及蘋果app還在使用flash技術嗎?6. javascript - 前端開發 本地靜態文件頻繁修改,預覽時的緩存怎么解決?7. 新手 - Python 爬蟲 問題 求助8. java - public <T> T findOne(T record) 這是什么意思9. mysql數據庫每次查詢是一條線程嗎?10. python - linux怎么在每天的凌晨2點執行一次這個log.py文件
