Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用JavaScript处理事件的最佳实践_Javascript_Jquery - Fatal编程技术网

使用JavaScript处理事件的最佳实践

使用JavaScript处理事件的最佳实践,javascript,jquery,Javascript,Jquery,事件处理程序的最佳实践是什么?我不确定是否应该将按钮与要触发的功能放在一起,或者是否应该像jQuery一样等待按钮的点击事件 通常您可以这样做: $('.buttonOK').on('click', function(){ alert('ok'); }); 或者只需在按钮上添加javascript:ButtonAction()。 我更喜欢哪个 简短回答:一定要用第一种方法。事件委派的性能要高得多,但在代码中需要额外的条件,所以 这基本上是一种复杂性与性能的权衡 更详细的回答:对于少量元

事件处理程序的最佳实践是什么?我不确定是否应该将按钮与要触发的功能放在一起,或者是否应该像jQuery一样等待按钮的点击事件

通常您可以这样做:

$('.buttonOK').on('click', function(){
    alert('ok');
});
或者只需在按钮上添加
javascript:ButtonAction()。

我更喜欢哪个

简短回答:一定要用第一种方法。事件委派的性能要高得多,但在代码中需要额外的条件,所以 这基本上是一种复杂性与性能的权衡

更详细的回答:对于少量元素,添加单个事件处理程序效果良好。但是,随着您添加越来越多的事件 处理程序时,浏览器的性能开始下降。原因是 听事件是记忆密集型的


来源:

我也是新来的,但我发现一个很好的做法是“函数式编程”。 这意味着您要声明您的函数,然后调用它。这有助于您在多个事件中希望事件发生,例如

function ok () {
            consol.log("ok");  //consol log is much less annoying for debugging
        }

        $(".buttonOK, .btnOK").click(ok);  // calls function on class button ok or btnOK
        $(document).keyup(function(e) {if (e.which === 13) {ok();}}); //callsfunction on enter

我希望这会有所帮助:)

不在标记中添加它会更好,但最终这是个人意见。这是否回答了您的问题?所以我应该等待用户的html操作,比如点击按钮,然后使用函数,或者我必须定义按钮来触发函数?嗨,谢谢,我对编程不是很在行,但在javascript中,我只想获得这一点的最佳实践,以了解在大型平台CMS中,它是否不会延迟脚本。