gpt4 book ai didi

javascript - 记住 $(this) 是什么

转载 作者:搜寻专家 更新时间:2023-11-01 05:02:40 28 4
gpt4 key购买 nike

我有以下脚本将 jquery 生成的对象的颜色更改为蓝色:

$(".objects_list").live('click', function(event)
{
$(this).css("color", "blue");
});

我如何记住 $(this) 是什么,以便我可以再次更改颜色,但来自不同的函数或来自不同对象的事件?

最佳答案

您可以使用 jQuery 的 data() 而不是全局变量将信息与文档本身相关联的方法:

$(".objects_list").live('click', function(event) {
$(this).css("color", "blue");
$(document).data("yourObjectKey", $(this));
});

然后您可以稍后轻松获取该信息:

$("otherSelector").click(function() {
var yourObject = $(document).data("yourObjectKey");
if (yourObject != null) {
yourObject.css("color", "red");
}
});

编辑:如果元素在两个事件之间被销毁并重新创建,则该方法将不起作用。在这种情况下,您可以存储元素的 id 而不是对元素本身的引用:

$(".objects_list").live('click', function(event) {
$(this).css("color", "blue");
$(document).data("yourObjectKey", this.id);
});

然后:

$("otherSelector").click(function() {
var yourObjectId = $(document).data("yourObjectKey");
if (yourObjectId != null) {
$("#" + yourObjectId).css("color", "red");
}
});

关于javascript - 记住 $(this) 是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4864614/

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