JavaScript/jQuery : How to Chain a Method that uses console. 日志()

标签 javascript jquery plugins chaining method-chaining

我正在研究 jQuery 插件开发,我想链接方法。我在 jQuery 教程 ( https://learn.jquery.com/plugins/basic-plugin-creation/ ) 中读到,您可以通过将 return this; 添加到方法的末尾来链接方法,这适用于第一个方法(测试 1)。对于使用 console.log 的第二种方法(测试 2),我该如何做到这一点?所有方法都可以链接吗?

   // test 1
    $.fn.greenify = function () {
        this.css('color', 'green');
        return this;
    };

    // test 2
    $.fn.console = function () {
        this.on('click', function () {
            console.log('hello world');
        });
    };

    $('a').greenify().console();

最佳答案

第二个方法应该返回 jQuery 实例。事件处理程序使用 console.log 函数这一事实与该方法的返回值无关。当 on 返回您可以编码的 jQuery 对象时:

$.fn.console = function () {
   return this.on('click', function () {
      console.log('hello world');
   });
};

现在 console 方法是可链接的!

关于JavaScript/jQuery : How to Chain a Method that uses console. 日志(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30157097/

相关文章:

javascript - fancybox 内的 Fancybox(或嵌套的 fancybox)

java - SonarQube 插件如何获取报告数据?

java - 果冻 + JavaScript

javascript - 读取api返回的未知值

php - PHP 中是否有类似 JavaScript 的 apply 函数?

javascript - IE Chrome 框架全屏

javascript - 构造HTMLOptionElement时 'selected'和 'defaultSelected'有什么区别?

jquery - 如何在 jQuery UI Sortable 中移动列表元素而无需鼠标,纯粹在 jQuery 中?

css - 在此 Joomla 插件代码中添加 CSS

javascript - 用 Electron 应用程序中的复杂状态对象 react useState 问题