jquery - 从元素事件内部调用的函数获取元素

标签 jquery

假设我有以下内容...

jQuery('#a').click(function(){
   myFunction();
});
function myFunction(){
  var me = jQuery(this);// this one gets the "window" object instead of "#a" element
}

当我无法发送this作为参数时,如何从myFuncton获取启动事件的目标元素,因为它会让我滑行返回并重新检查整个站点并更改每个函数调用参数...

最佳答案

所以你可以这样做:

$('#a').click(myFunction); // then this in myFunction will be the '#a' element.

更新:

如果您需要在回调中执行 myFunction 以外的其他操作,那么您可以尝试 .call().apply() 来执行带有给定这个值

$('#a').click(function() {
    otherLogic();
    myFunction.call(this);
});

关于jquery - 从元素事件内部调用的函数获取元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12862727/

相关文章:

jquery - ionic 子页脚未固定在底部

javascript - 当我单击内部链接时,jQuery ToggleClass 正在切换

javascript - 如何使用 javascript 返回 YouTube 播放列表中的视频数量?

javascript - 如何检查 id 值是否已经存在于对象数组中?

jQuery 自动完成和 Flask

javascript - css 在缩略图悬停或单击时打开详细信息框

javascript - 请求的资源错误中不存在 'Access-Control-Allow-Origin' header

jquery - 如何使 jQuery 弹出窗口比默认更宽?

javascript - 如何使用 showErrors 函数显示集中错误消息并更改输入边框颜色

javascript - 如何为下拉菜单添加滚动条