2015-03-21 2 views
1

Я использую метод уничтожения Skrollr, чтобы убить skrollr на чем-нибудь под 768px.Skrollr Destroy at width И мобильные устройства

Нашел здесь, и это в основном работает отлично:

$(function() { 
 
    // initialize skrollr if the window width is large enough 
 
    if ($(window).width() > 767) { 
 
    skrollr.init(yourOptions); 
 
    } 
 

 
    // disable skrollr if the window is resized below 768px wide 
 
    $(window).on('resize', function() { 
 
    if ($(window).width() <= 767) { 
 
     skrollr.init().destroy(); // skrollr.init() returns the singleton created above 
 
    } 
 
    }); 
 
});

Но мои мобильные устройства только частично поворачивая skrollr прочь. особенно iPad.

Я видел этот метод уничтожить здесь тоже:

//function 
 
$(function skrollrInit() { 
 

 
    //initialize skrollr 
 
    skrollr.init({ 
 
     smoothScrolling: false 
 
    }); 
 

 
    // disable skrollr if using handheld device 
 
    if(/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)) { 
 
     skrollr.init().destroy(); 
 
    } 
 

 
}); 
 

 
//execute function 
 
skrollrInit();

Я интересно, если есть метод, который сочетает в себе два? спасибо !!

ответ

6
if (!/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent) && $(window).width() > 767) { // only init skrollr on non-mobile devices 
    skrollr.init(yourOptions); 
} 

$(window).on('resize', function() { 
    if (!/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)) { // no reason to destroy on mobile 
     if ($(window).width() <= 767) { 
      skrollr.init().destroy(); // skrollr.init() returns the singleton created above 
     } 
    } 

});