你如何处理jQuery插件中的点击事件?

DLL*_*DLL 5 jquery jquery-plugins

你如何处理插件中的点击事件?简单的描述是我想要一个插件来检测点击然后更新另一个元素.

用法示例:

$("#some_id").myPlugin("another_id");

示例插件:

(function($){

     $.fn.myPlugin=function(update_id){

     .click({$(update_id).html("content_upated");});

     }

})(jQuery);
Run Code Online (Sandbox Code Playgroud)

我不明白如何在插件中编写.click事件.任何例子都会有所帮助.谢谢.

mea*_*gar 13

你应该做两件事:

  1. 使用this引用其被应用插件元素
  2. 命名空间您的事件,以便稍后可以轻松解除绑定

请尝试以下方法

(function($){

     $.fn.myPlugin = function(update_id) {

       this.bind("click.myPlugin", function () {
         $(update_id).html("content_upated");
       });

    };

})(jQuery);
Run Code Online (Sandbox Code Playgroud)

您应该阅读jQuery插件创作页面,了解有关如何正确开发jQuery插件的更多信息.您缺少其他重要细节,例如接受参数对象.

  • 使用事件名称空间的+1绝对是个好主意.我唯一的建议是`.unbind()`在绑定它之前使用相同的命名空间事件,以防止在同一元素上多次调用插件时重复的事件处理程序. (3认同)