gpt4 book ai didi

javascript - jQuery - 链接自定义函数

转载 作者:数据小太阳 更新时间:2023-10-29 05:45:10 26 4
gpt4 key购买 nike

我想知道如何链接我的自定义函数并维护“this”的上下文。

例子:

$.fn.foo = function() {
var html = '<div class="foo"></div>';
if ($(this).hasClass(somthing) {
$(this).prepend(html);
}
}

$.fn.bar = function() {
var html = '<h3>bar</h3>';
$(this).find('.foo').prepend(html);
}

$('body').foo().bar();

当我尝试使用这段代码时,我得到一个TypeError: Cannot read property 'bar' of undefined

最佳答案

您需要从您的自定义方法返回当前元素上下文,即 this

$.fn.foo = function() {
var html = '<div class="foo"></div>';
if ($(this).hasClass('somthing')) {
$(this).prepend(html);
}
return this; //The magic statement
}

$.fn.bar = function() {
var html = '<h3>bar</h3>';
$(this).find('.foo').prepend(html);
return this; //The magic statement
}

$('body').addClass('somthing').foo().bar();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

关于javascript - jQuery - 链接自定义函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37992651/

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