javascript - 将点击事件 'this' 传递给另一个函数,这是正确的做法吗?

标签 javascript jquery

目前正在尝试维护一个对象方法,目前我想在点击处理程序被操作时调用一个切换方法。所以处理程序在 init 方法中,当我单击链接时,我调用 toggle_pane() 传递已单击“this”的链接,这听起来正确还是我应该做什么?欢迎所有建议!

这是我正在处理的代码片段:

JS

init: function(){

            var _ = this,
                slides_li = _.els.slides.children();

            // Click handlers
            slides_li.on('click', function(e) {
               _.toggle_pane(this); 
            });



        },
        toggle_pane: function(li){

            var _ = this,
                slides_li = _.els.slides.children();

            if( !$(li).hasClass('active')) {
             console.log( 'dont have active' );   
            }


        }            

最佳答案

是的,这是一种方法。虽然,普通的旧下划线并不是最好的变量名。我会推荐一些更清晰的东西,比如 var _this = this;

尝试查看 jQuery 源代码本身,它与 this 做了一些杂耍。

关于javascript - 将点击事件 'this' 传递给另一个函数,这是正确的做法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10998769/

相关文章:

jquery - 如何根据div的滚动获取数据-JQuery?

jquery - 使用 JQuery 加载网站的所有页面 - SEO 问题?

javascript - 单击更改鼠标指针并返回释放

javascript - $.ajax 没有返回响应

javascript - 光标一直移动到开头

javascript - 随着游戏的进行,游戏循环出现滞后

javascript - Firefox 扩展应用程序 RESTClient 如何避免 CORS?

javascript - 将字符串值放入 JavaScript 的 <p> 标记中

jquery - 在Grails Controller 中使用g.render的输出

javascript - 正则表达式:仅匹配非嵌套组