从数据属性中使用值时,请访问TypeError



这是我的JavaScript代码:

$(".filter").on('click', function (e) {
     var filterFunction = $(this).data('strength');
     console.log(filterFunction); // Outputs brightness(10)
     Caman('#canvas', function () {  
           this.filterFunction.render();
     });
});

这是我遇到的确切错误: Uncaught TypeError: Cannot read property 'render' of undefined

我想使用一块代码来处理所有过滤器。在尝试上述代码之前,实际代码是:

$brightness.on('click', function (e) {
     Caman('#canvas', function () {
         this.brightness(10).render();
     });
});

但是,这样,我将不得不为每个过滤器创建一个不同的处理程序。我想避免。谁能帮我解决这个错误?

这是上下文时的上下文,因此,当您需要执行该代码

时,就不必手动触发事件代码,而不是再次运行事件。
$(".filter").on('click', function (e) {
     $brightness.trigger('click'); //trigger manually click event of $brightness also keep the $brightness handler as it is written
});

相关内容

  • 没有找到相关文章

最新更新