簡體   English   中英

如何在 JQuery 的事件處理程序中使用外部 function

[英]How to use an external function in event handler in JQuery

我想做這樣的事情:

                $(div).bind('click', myFunctionWithManyManyLinesOfCode(param) );

              .....

         function myFunctionWithManyManyLinesOfCode(args){
             //50 lines of Code
           }

如果我這樣做,則 function 會在代碼到達該點並且不會在點擊時執行。

如果我在綁定方法中包含來自 function myFunctionWithManyManyLinesOfCode 的代碼,那將是一團亂麻。

另外,我試過這個,但我不能引用變量,它們是未定義的

                $(div).bind('click',  function() {myFunctionWithManyManyLinesOfCode(param)} );

您可以通過以下方式傳遞您想要的任何數據。

這應該為您解決問題。 如果有不清楚的地方,請寫評論。

編輯:如評論中所述,您應該使用而不是綁定。

 function myFunction(e){ console.log(e.data.id); } $('#example').on('click',{id: "WHATEVER"}, myFunction);
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <button id="example">Test</button>

首先,50行代碼對於一個function來說太多了,應該分成更小的方法,但是你可以使用這種方法:

var hello = () => {
 alert(123)
}
$("p").click(hello);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM