gpt4 book ai didi

jquery - $(this).attr 不起作用

转载 作者:行者123 更新时间:2023-12-01 01:16:01 25 4
gpt4 key购买 nike

我正在使用 fancybox,我想在 fancybox 执行之前获取元素类。所以我有:

$(".agent-file-popup").fancybox({
'onStart': function () {
console.log($(this).attr('class'));
console.log($(".agent-file-popup").attr('class'));
return true;
}
});

第一个日志输出“未定义”,但第二个日志输出正确的类。为什么在这种情况下我不能使用“this”作为元素?

最佳答案

$(this) 是一种非常流行的结构,用于指示当前元素是焦点,可以在事件和选择器函数中使用。这相当于 JavaScript 的 this由 jQuery 函数包装的构造,以提供对 jQuery 函数的访问。

$(".user").click(function() {
//Here $(this) will represent the element that was click with class .user
});

插件通常是作为 jQuery 的 jQuery() 函数的扩展而开发的,它们几乎不负责检测当前元素。

因此,当您初始化插件时 $(this) 可能很容易代表什么。

Fancybox 有办法获取当前元素。

onstart: function(itemArray, selectedIndex, selectedOpts){
// selectedIndex holds the current selected box on itemArray as the collection object.
}

关于jquery - $(this).attr 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15316523/

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