Jak mogę pozwolić obiektowi DOM, np. Div, móc przewijać za pomocą kółka myszy lub klawiszy strzałek (np. overflow:scroll
), ale nie pokazywać paska przewijania (jak overflow:hidden
)?Przewijany, ale bez paska przewijania
Odpowiedz
Można ustawić powiązanie detektora zdarzeń ze scrolldown/scrollup (poprzez zdarzenie koła myszy, patrząc na event.wheelDelta na rozmiar calc i directino z przewijaniem) i ręcznie ustawić div absolut pozycji bezwzględnej w innej stałej wysokości absolutnie/względnie pozycjonowany div . Tak więc, przewijając w dół, zmniejsz pozycję y wewnętrznego div, a podczas przewijania w górę zwiększasz pozycję y.
W przypadku klawiszy strzałek należy po prostu powiązać podobną funkcję z funkcją sprawdzania zdarzeń klawiszy strzałek w dół/w górę, stosownie do potrzeb.
Zrobiłem jsfiddle exampling tę technikę tutaj: http://jsfiddle.net/wsmithrill/U7ju8/32/
Cudownie. Dzięki. – sawa
Jeśli chcesz pominąć JavaScript w ogóle, można spróbować co zasugerowałem here.
Zasadniczo, masz div pojemnika, który jest nieco węższy niż div zawartości. Ustaw kontener ustawiony na przepełnienie: ukryty, ale element div ustawiony na przepełnienie: przewiń. Jeśli kontener jest węższy, ukryje pasek przewijania.
Przebiegły. Lubię to. – SpaceBeers
Cieszę się, że Ci się podoba! Niestety, jest to straszne z punktu widzenia użyteczności - w jaki sposób użytkownik powinien wiedzieć, że jest więcej treści poza witryną? – chipcullen
To prawda, ale mam zdrowy szacunek dla takich sztuczek ... – SpaceBeers
jeśli może to potrzebne, aby zatrzymać przewijanie w dół po osiągnięciu top:
var top_val = $("#inner").css("top");
if (top_val.indexOf("-") > -1)
{
$("#inner").css("top", parseInt($("#inner").css("top"), 10) + 5 + "px");
}
- 1. Znaleźć pionowe położenie paska przewijania bez jQuery
- 2. Tworzenie paska przewijania
- 3. Przesunięcie paska przewijania przeglądarki
- 4. Zmiana pozycji paska przewijania
- 5. Animate.CSS Dodawanie paska przewijania?
- 6. Zmiana szerokości paska przewijania
- 7. Szerokość paska przewijania CSS
- 8. Przewijany JDesktopPane?
- 9. Jak zachować element div przewijany na dół, gdy treść HTML jest do niego dołączana przez jquery, ale ukrywa pasek przewijania?
- 10. Dlaczego nie mam paska przewijania?
- 11. Jak zmienić kolor paska przewijania
- 12. Ukrywanie paska przewijania w podzbiorze
- 13. Ustawianie pozycji paska przewijania ListBox
- 14. Dostosowywanie paska przewijania przez QListWidget
- 15. niestandardowy pasek przewijania bez jquery
- 16. Zapobieganie wyświetlaniu pionowego paska przewijania Silverlight ListBox
- 17. Zwijanie paska narzędzi Wyłączanie i ukrywanie paska narzędzi podczas przewijania
- 18. Zapytania o media i szerokość paska przewijania
- 19. Jak zwiększyć szerokość paska przewijania w przeglądarce przewijania WPF?
- 20. Jak określić kierunek przewijania bez rzeczywistego przewijania
- 21. HTML5: Iframe Bez przewijania?
- 22. C# DataGridView - Włączanie pionowego paska przewijania
- 23. Udostępnianie 1 paska przewijania między dwoma DataGrids
- 24. Zastosuj styl paska przewijania do podanego elementu
- 25. Typeahead.js, event paska przewijania i klawiatury
- 26. Przestrzeń zarezerwowana HTML dla paska przewijania
- 27. Jak wyzwalać zdarzenia przewijania bez przewijania
- 28. Ukrywanie/wyświetlanie paska przewijania siatki Kendo
- 29. Wysokość ciała 100% wyświetlanie pionowego paska przewijania
- 30. Wyzwalanie na widoczności paska przewijania ScrollViewer (WPF)
Dlaczego ta downvoted? – sawa
Nie mam pojęcia - zamierzam to zrekompensować;) –