запустить функцию Jquery, когда размер окна больше 800

Я делаю анимацию greensock и scrollmagic. Я поместил эту анимацию в функцию с именем scrollMgc. эта анимация будет работать, когда ширина окна больше 800 пикселей, и остановится, когда окно будет меньше 800 пикселей при изменении размера. Это код, который я написал до сих пор

function scrollMgc(){

    // Prepare the stage
    TweenMax.set($('.animation-awards'), {y: 70});

    // Make scrollmagic controller
    var controller = new ScrollMagic.Controller();

    // Create awards scene
    var awardScene = new ScrollMagic.Scene({
        triggerElement: '.awards',
        triggerHook: 0.8,
        duration: '270%'
    })
    .setTween(TweenMax.to('.animation-awards', 1, {y: '-=300'}))
    .addIndicators({})
    .addTo(controller);

}

$(window).resize(function(){
    if($(this).width > 800){
        scrollMgc();
    }
    else{
        scrollMgc = undefined;
    }
})

Может ли кто-нибудь помочь мне в этом вопросе?


person Mhd-arif    schedule 11.11.2016    source источник
comment
это код, который я написал до сих пор? Итак, с какой проблемой вы столкнулись, каков ожидаемый результат и т. д. И, пожалуйста, создайте демонстрацию, которая поможет объяснить проблему и результат.   -  person Manish    schedule 11.11.2016
comment
вместо остановки вы удаляете функцию здесь: scrollMgc = undefined;   -  person lynx    schedule 11.11.2016
comment
я хочу, чтобы функция запускалась, когда ширина экрана превышает 800 пикселей, и я хочу, чтобы функция не запускалась, когда я изменяю размер экрана до менее 800 пикселей, поэтому я использовал .resize(). Проблема в том, что функция все еще работает, когда я уменьшаю размер экрана.   -  person Mhd-arif    schedule 11.11.2016


Ответы (2)


$(this).width — это функция.

$(this).width()
person Sagar    schedule 11.11.2016

Измените свой код, как показано ниже, так как ширина - это функция:

if($(this).width() > 800){
   scrollMgc();
}
else{
   scrollMgc = undefined;
}
person Prachi Bhandari    schedule 11.11.2016
comment
я все еще не понимаю - person Mhd-arif; 11.11.2016
comment
Хорошо, тогда попробуйте $(window).width();. Это работает правильно во мне. - person Prachi Bhandari; 12.11.2016