2013-02-25 2 views
5

je un élément qui a une position fixe, mais a la possibilité de faire défiler à gauche et à droite à l'aide d'un calcul jQuery que j'ai utilisé de this example on JsFiddle.avec scrollLeft défile plus vite que le reste du document

$(window).scroll(function(event) { 
var x = 0 - $(this).scrollLeft(); 
var y = $(this).scrollTop(); 

// whether that's below the form 
if (y >= top) { 
    // if so, ad the fixed class 
    $('.scroll_fixed').addClass('fixed'); 
} else { 
    // otherwise remove it 
    $('.scroll_fixed').removeClass('fixed'); 
} 

$(".scroll_fixed").offset({ 
    left: x + leftInit 
}); 

}); 

La solution fonctionne bien jusqu'à ce que je doive faire défiler vers la gauche, où l'élément défile parallaxe au reste du document, c'est-à-dire qu'il défile environ deux fois plus vite que le reste du document.

Je sais que c'est un problème avec le calcul jQuery, mais je me demandais si quelqu'un a déjà rencontré ça auparavant? et si oui, comment l'avez-vous attaqué? Je suis un peu une perte ....

modifier

problème résolu

- Il a été parce que le code utilisait $ (fenêtre) .scrollLeft(); au lieu de l'élément parent dans la portée de l'élément que je souhaitais manipuler. Le wrapper div a été classé comme "wrapperDiv", donc j'ai utilisé $ (". WrapperDiv"). ScrollLeft();

Je marquer cette question posée, mais comme je suis nouveau à Stack Overflow je ne peux pas répondre pendant encore 7 heures ....

Répondre

0

Juste pour signaler cette question a répondu:

« Il était parce que le code utilisait $(window).scrollLeft(); au lieu de l'élément parent dans la portée de l'élément que je souhaitais manipuler.Le div wrapper a été classé comme "wrapperDiv", donc j'ai utilisé $(".wrapperDiv").scrollLeft(); "

Questions connexes