gpt4 book ai didi

javascript - 如何将变量传递给 jQuery 的 .fadeOut()

转载 作者:行者123 更新时间:2023-12-01 02:28:34 27 4
gpt4 key购买 nike

我有一个对象想要传递给 .fadeOut()

在我们开始之前,先介绍一下如何将对象传递给 .click():

this.$title.click({story: this}, function (event){
var story = event.data.story;
}

足够简单。

现在我想用 .fadeOut 做类似的事情:

this.$title.fadeOut("fast", {story: this}, function(){
var story = ???
});

这不起作用。但你明白了吗?如何将 this 传递到 anon 函数中?

我正在寻找最干净的解决方案。除此之外,我正在寻找最符合我对 .click() 所做的事情的解决方案。

谢谢!

旁白:是否有更简洁的方法将 this 传递到 .click() 中?

最佳答案

这是一个关于 JS 的问题,而不是关于 jQuery 的问题;你可以这样做:

var story = this

this.$title.click(function () {
/* story still available */
})

this.$title.fadeOut('fast', function () {
/* same here */
})

或者更奇特的东西(这也保留了分配时story的内容,即使它稍后在上层作用域中被覆盖):

this.$title.click((function (story) {
return function () {
/* story is available */
/* this will be passed to $(...).click(...) */
}
})(this))

关于javascript - 如何将变量传递给 jQuery 的 .fadeOut(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30927559/

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