js如何給事件繫結的函式傳遞引數
在實際應用中可能需要給事件處理函式傳遞引數進行處理,但是往往在應用中並不能遂人願。
先看一段例項程式碼:
[HTML] 純文字檢視 複製程式碼<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style type="text/css"> #thediv { width:100px; height:30px; text-align:center; line-height:30px; margin:0px auto; } </style> <script type="text/javascript"> window.onload=function() { var odiv=document.getElementById("thediv"); var obt=document.getElementById("bt"); var str="螞蟻部落"; obt.onclick=function(ev,str){ var ev=ev||window.event; var x,y; x=ev.clientX; y=ev.clientY; odiv.innerHTML=str+"<br/>"; odiv.innerHTML=odiv.innerHTML+x+" "+y; } } </script> </head> <body> <div id="thediv"></div> <input type="button" id="bt" value="檢視效果"/> </body> </html>
在以上程式碼中,點選按鈕測試發現,註冊的事件處理函式傳遞的引數只能夠是事件物件,也就是說如此為事件處理函式傳遞引數是錯誤的,程式碼修改如下:
[HTML] 純文字檢視 複製程式碼<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> <style type="text/css"> #thediv { width:100px; height:30px; text-align:center; line-height:30px; margin:0px auto; } </style> <script type="text/javascript"> window.onload=function() { var odiv=document.getElementById("thediv"); var obt=document.getElementById("bt"); var str="螞蟻部落"; function add(str){ return function(ev){ var ev=ev||window.event; var x,y; x=ev.clientX; y=ev.clientY; odiv.innerHTML=str+"<br/>"; odiv.innerHTML=odiv.innerHTML+x+" "+y; } } obt.onclick=add(str) } </script> </head> <body> <div id="thediv"></div> <input type="button" id="bt" value="檢視效果"/> </body> </html>
相關文章
- 函式的引數傳遞函式
- JavaScript為事件處理函式傳遞引數JavaScript事件函式
- JavaScript函式傳遞引數JavaScript函式
- python中函式的引數傳遞Python函式
- 函式作為引數傳遞函式
- 函式引數傳遞及返回函式
- Python的函式引數傳遞:傳值?引用?Python函式
- 如何計算PHP函式中傳遞的引數數量PHP函式
- php函式引用傳遞引數的方法PHP函式
- React事件傳遞引數React事件
- React中this值繫結和事件函式傳參React事件函式
- JS的方法引數傳遞(按值傳遞)JS
- Python語法—函式及引數傳遞Python函式
- JS給全域性繫結事件以及給除某個元素外的其他元素繫結事件JS事件
- 傳遞指標引數(函式內部給指標賦值)示例指標函式賦值
- 【C語言】函式的概念和函式的呼叫(引數傳遞)C語言函式
- 給妹子講python-S01E20函式引數的傳遞與修改Python函式
- Python3之函式的引數傳遞與引數定義Python函式
- js中 函式引數的 傳值/傳引用 問題JS函式
- echarts 繫結事件處理函式Echarts事件函式
- js on繫結事件JS事件
- php函式之如何用預設引數和可變長度引數方式傳遞?PHP函式
- 『無為則無心』Python函式 — 26、Python函式引數的傳遞方式Python函式
- Golang 切片作為函式引數傳遞的陷阱與解答Golang函式
- emscripten、 WebAssembly,傳遞字串給c函式Web字串函式
- Vue 如何給元件繫結原生事件Vue元件事件
- go return 的時候傳遞引數給deferGo
- Vue 中,如何將函式作為 props 傳遞給元件Vue函式元件
- JS-事件繫結JS事件
- vue事件帶預設引數,怎麼傳遞其他引數Vue事件
- 呼叫 sap.ui.base.ManagedObject 的建構函式時,如何傳遞繫結路徑進去UIObject函式
- JS的事件繫結和事件流模型JS事件模型
- 二級指標,二維陣列函式引數傳遞指標陣列函式
- Grails中如何繫結引數AI
- [思] 當需要傳遞多個不定引數時,該如何設計 JavaScript 函式?JavaScript函式
- C語言函式傳遞指標引數的問題詳解C語言函式指標
- 函式中引數傳值函式
- Go 之基礎速學 (五) golang 裡函式以及函式之間引數的傳遞Golang函式
- 傳遞函式函式