$(本).addClass(“为什么 - 你 - 没有工作”);不在航点上工作?

时间:2015-01-10 08:24:35

标签: jquery jquery-waypoints

我今天只是尝试了点,因为它看起来很棒,

然而,我很难让事情发挥作用,

第一次简单测试,效果很好,

$('.parallax').waypoint(function() {
        alert('I work');
});

但是当我使用$(this)时,它不会工作,例如

$('.parallax').waypoint(function() {
        $(this).addClass('why-you-no-working');
});

你可以从这里看到样本 - > http://jsfiddle.net/4D3bH/425/

第二个框应该是黑色背景颜色而不是蓝色,但由于某种原因它的简单不起作用,

如果我使用下面的内容,它可以正常工作,

$('.parallax').waypoint(function() {
            $('.parallax').addClass('why-you-no-working');
});

花了将近三个小时试图让它运转,但没有运气,

请帮助:)

1 个答案:

答案 0 :(得分:11)

在这种情况下,this不会引用DOMElement。您可以通过属性this.element

在回调内部引用DOMElement
$('.parallax:nth-of-type(2)').waypoint(function() {        
    $(this.element).addClass('why-you-no-working');
},{offset: '1%'}); 

Example