$(this)属性与waypoints.js无关。
我的Javascript:
$('.dipper').waypoint(function() {
$(this).addClass('test');
}, { offset: '100%' });
奇怪的是,本守则在我的网站上运作良好:
$('.dipper').waypoint(function() {
$('.dipper').addClass('test');
}, { offset: '100%' });
在这种情况下,我使用.dipper
代替$(this)
。您可以在我的网站上查看:http://www.sq-media.de/weboptimierungen/rehfeld
答案 0 :(得分:6)
waypoint方法不使用与父jQuery对象相同的上下文运行。如果您需要此行为,可以使用each
来迭代.dipper
元素:
$('.dipper').each(function() {
var $this = $(this);
$this.waypoint(function() {
$this.addClass('test');
}, { offset: '100%' });
});
答案 1 :(得分:3)
根据航点提供的文档,您将获得元素ID
this.element.id
所以你的功能看起来像 -
$('.dipper').waypoint(function() {
$('#' + this.element.id).addClass('test');
}, { offset: '100%' });
摘自http://imakewebthings.com/waypoints/guides/jquery-zepto/
注意:只有额外的工作才能将ID添加到相应的元素中。