gpt4 book ai didi

javascript - 如何在 jQuery 中使用 $(this) 改进这段代码?

转载 作者:行者123 更新时间:2023-11-29 18:37:34 25 4
gpt4 key购买 nike

我有以下 jQuery 函数(简化):

function doSomething(el, str) {
el.find('.class').text(str));
}

不要担心 .text() 部分,实际上我正在做的事情比那更复杂......但是因为这与我的问题无关,我只是这里使用 .text() 作为一个简单的例子。

问题是,每次我调用 doSomething() 函数时,代码如下所示:

doSomething($(this), foo); // the second argument is irrelevant
doSomething($(this), bar); // the second argument is irrelevant

如您所见,我总是将 $(this) 作为第一个参数传递。不知怎的,我觉得这不是要走的路......可以改进这个功能,让它自动从调用它的上下文中继承 $(this) 吗?可能类似于以下内容:

$(this).doSomething(foo); // the foo argument is irrelevant
$(this).doSomething(bar); // the bar argument is irrelevant

最佳答案

您可以创建一个简单的插件来执行此操作。

关于的文章很多。参见 this一个在 jQuery 站点上以获取更多信息

$(function(){

jQuery.fn.changeAnchorText = function(str) {
return this.each( function(){
$(this).find('a.someClass').text(str);
});
};

});

然后调用它

$('div').changeAnchorText("Any descendant anchor tags inside this div with a class of someClass will have the text changed to this message");

关于javascript - 如何在 jQuery 中使用 $(this) 改进这段代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1244075/

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