【发布时间】:2010-10-13 05:08:55
【问题描述】:
我正在尝试在 Fancybox 的 onComplete 事件中使用 jQuery 的 $(this),但我遇到了麻烦。这是我的 JavaScript 代码:
$('a.iframe').fancybox({
centerOnScroll: true,
onComplete: function(){
var self = $(this);
var title = self.title;
alert(title.text());
}
});
我已经简化了上面的代码来表达我的观点,但实际上我很想使用$(this),原因有几个,我不会在这里讨论。
Fancybox 的文档在其文档中显示了使用 this 而不是 $(this) 的示例,但我没有看到任何在 onComplete 或其他事件中使用的示例。我当然尝试过使用this,但无济于事。
有谁知道我如何使用$(this) 或在onComplete 事件中 引用触发的a.iframe 元素?
编辑: 我使用Blackcoat 的建议让它工作,这是最终的有效语法:
$('a.iframe').fancybox({
centerOnScroll: true,
onComplete: function( links, index ){
var self = $(links[index]);
var title = self.find('.title').text();
alert(title);
}
});
【问题讨论】:
-
不管怎样,我使用的是 jQuery 1.4.2 和 Fancybox 1.3.1。
标签: javascript jquery events fancybox this