gpt4 book ai didi

javascript - 在命名处理函数中使用 $(this) 和事件

转载 作者:行者123 更新时间:2023-11-30 10:24:59 25 4
gpt4 key购买 nike

我有这个功能:

function showPost(event){
event.preventDefault();
$(this).parent('article').animate({width:'100%'}, 'slow');
}

我正在尝试这样使用它:

$('.article-header').click(function(event){showPost(event);});

当我以上述方式使用它时,事件属性传递得很好,但是 $(this) 在函数中不起作用。如果我尝试将 this 作为参数包含在 .click 方法中,它会返回一个错误,声称 this 未定义。我什至将 var ths = $(this); 设置为无用。

请问,实现此功能的正确方法是什么?

最佳答案

直接使用函数即可:

$('.article-header').click(showPost);

您正在丢失 this,因为您正在调用“裸”函数,没有对象接收器。您也可以这样做(但不要这样做,因为这里没有意义):

$('.article-header').click(function(event) { showPost.call(this, event); });

关于javascript - 在命名处理函数中使用 $(this) 和事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20023215/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com