Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [jQuery] Przeskok strony po użyciu funkcji show()
Forum PHP.pl > Forum > Po stronie przeglądarki
daniel1302
Witam, po użyciu funkcji show() z jQuery, która jest uruchamiana w evencie click()- zmienia mi sie wysokość strony, ponieważ pokazuje się box o wysokości kulku tysięcy px pod elementem w który kliknęliśmy,

I teraz jest sedno problemu:

Zakładamy, że jestem na dole(przewinęłem prawe maksymalnie) i widze stopke i klikam w element, to element w który kliknąłem ucieka mi do góry, a ja znowu widze stopke, oraz końcówke tego boxa który pojawił sie. Chciałbym dalej widzieć element w który kliknąłem. Czyli chciałbym żeby przeniosło mnie do tej pozycji gdzie jest teraz element z eventem click.

Jak to najprościej osiągnąć?
strife
Możesz po kliknięciu przescrollować okno do żądanej pozycji.

Np.
[JAVASCRIPT] pobierz, plaintext
  1. jQuery('html,body').animate({scrollTop:jQuery('.twoj-selector').offset().top - 20}, 500);
[JAVASCRIPT] pobierz, plaintext
rad11
  1. <a href="#element">click</a>


lub

  1. function goToId(element){
  2. $('a').on('click', function(){
  3.  
  4. $(this).attr('href', '#'+element);
  5.  
  6. });
  7. }
  8. goToId('a');
tzm
pod klikiem rob tak:


[JAVASCRIPT] pobierz, plaintext
  1. $('body').css({
  2. 'position':'relative',
  3. 'overflow':'hidden',
  4. 'margin':'0px auto'
  5. });
[JAVASCRIPT] pobierz, plaintext


po kliku czy tam zamknieciu tego co pokazujesz:

[JAVASCRIPT] pobierz, plaintext
  1. $('body').removeAttr('style');
[JAVASCRIPT] pobierz, plaintext
daniel1302
Poradziłem sobie w elegancki sposób, ale dziękuje za pomoc. Po kliknięciu delikatnie (w czasie 800 ms) przesuwam element na środek. Efekt wygląda bardzo ładnie, więc zostawię. Dziękuje za odpowiedzi.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.