Wie aktiviere ich das Scrollen auf einer Website, die das Scrollen deaktiviert hat? [geschlossen]


103

Wie kann ich das Scrollen auf einer Website, auf der das Scrollen mit Javascript deaktiviert ist, schnell wieder aktivieren? window.scrollBy (0, 100) funktioniert einwandfrei und scheint nicht herauszufinden, wie dies an Tasten oder Mausrollen gebunden werden kann.


4
Hängt stark davon ab, wie es deaktiviert wurde. Holen Sie sich das zuerst.
Joseph

1
Ist das deine eigene Website? Oder versuchen Sie dies bei jemand anderem zu tun?
Designcise

14
Wahrscheinlich durch Einstellen overflow: autoauf das bodyElement. Sie können dies mit testen document.body.style.overflow = 'auto'oder es einfach als CSS-Stil in Entwicklertools festlegen.
Bryan Downing

1
@JosephtheDreamer unabhängig davon, wie es deaktiviert wurde window.scrollBy (0,100) funktioniert für mich auf allen Testseiten, daher versuche ich, einen effektiven Weg zu finden, um dies einer Tastenschaltfläche oder einem Scrollrad zuzuweisen.
CodeCamper

Was ist Web - Sites , wo window.scrollBy(0,100)sie nicht arbeiten?
Michael

Antworten:


126

In einem Browser wie Chrome usw.:

  1. Überprüfen Sie den Code (z. B. in Chrome Press ctrl + shift + c).
  2. Setzen Sie overflow: visibleauf das Körperelement (für zB <body style="overflow: visible">)
  3. Suchen / Entfernen von JavaScripts, die routinemäßig auf das Entfernen der overflowEigenschaft prüfen :
    • Um einen solchen JavaScript-Code zu finden, können Sie beispielsweise den Code durchgehen oder auf einen anderen JavaScript-Code in der Code-Debugger-Konsole klicken und backspaceauf Ihre Tastatur klicken , um ihn zu entfernen.
    • Wenn Sie Probleme haben, es zu finden, können Sie einfach versuchen, ein paar JavaScripts zu entfernen (Sie können natürlich einfach drücken ctrl + z, um den gelöschten Code rückgängig zu machen, oder auf Aktualisieren klicken, um von vorne zu beginnen).

Viel Glück!


9
Stalking diese LinkedIn-Profile Inkognito-Modus ohne Vorzeichen? Es ist Konsolenzeit, Baby. <body>: ☐ o̶v̶e̶r̶f̶l̶o̶w̶:̶ ̶h̶i̶d̶d̶e̶n̶; das <section>Overlay kann gehen; endlich div # advocate-model : ☐ b̶a̶c̶k̶g̶r̶o̶u̶n̶d̶-̶c̶o̶l̶o̶r̶:̶ ̶r̶g̶b̶a̶(̶0̶,̶0̶,̶0̶,̶0̶.̶5̶)̶. 1, 2 und ... Poof!
Leo

11
Neben der Einstellung overflow: visiblemusste ich auch löschen position: fixed. Vielen Dank!
Wjandrea

1
Ich war auf Websites, auf denen Sie Inline-Stile style="overflow:hidden"aus dem Body-Tag löschen müssen .
Lei-Lonnie

1
Anstatt das Java-Skript zu finden, habe ich diesen schnellen Trick befolgt, um das Java-Skript vollständig zu deaktivieren, und das hat bei mir funktioniert: developer.google.com/web/tools/chrome-devtools/javascript/…
user1084563

2
Es wurden auch einige Seiten gefunden, die overflow: hiddendem <html>Tag selbst oben auf der Seite Stil verleihen. Verwandle es auch in overflow: visible.
Boud

41

Das Hinzufügen overflow:visible !important;zum Körperelement hat bei mir funktioniert.


1
Das OP forderte Javascript an. Das ist CSS.
Liran Funaro

18
@LiranFunaro Dein Punkt? Dieses CSS kann über JavaScript eingefügt werden:document.body.style.overflow = "visible !important";
Reformiert

Hier ist deine Antwort: @LiranFunaro
Kamal Reddy

28

Ich dachte nur, ich würde jemandem dabei helfen.

Normalerweise können Sie dies einfach in die Konsole einfügen.

$("body").css({"overflow":"visible"});

Oder die Nur-Javascript-Version:

document.body.style.overflow = "visible";


23

Sie können den folgenden Code in die Konsole einfügen, um mit den Tastaturtasten a / z nach oben / unten zu scrollen. Wenn Sie Ihre eigenen Schlüssel festlegen möchten, können Sie diese Seite besuchen , um die Schlüsselcodes zu erhalten

function KeyPress(e) {
  var evtobj = window.event? event : e
  if (evtobj.keyCode == 90) {
    window.scrollBy(0, 100) 
  }
  if (evtobj.keyCode == 65) {
    window.scrollBy(0, -100) 
  }
}

document.onkeydown = KeyPress;

Das ist perfekt
Alex L

7

Wählen Sie den Körper mit Chrome Dev Tools (Inspect) aus und ändern Sie den CSS-Überlauf: sichtbar,

Wenn das nicht funktioniert, checken Sie unter der CSS-Datei ein, wenn HTML, Body als Überlauf festgelegt ist: versteckt, ändern Sie es als sichtbar


2

Versuche dies:

window.onmousewheel = document.onmousewheel = null
window.ontouchmove = null 
window.onwheel = null 

1
Dies funktioniert möglicherweise nicht immer, wenn ein Abfrageskript Werte neu zuweist, aber eine gute Option!
Designcise

@designcise das wäre sehr hinterhältig von ihnen. Sie können jedoch immer schneller abfragen. :)
Adam Thompson

1
@ AdamThompson Ich habe tatsächlich einige Websites gesehen, die das tun. Besonders einige Websites, die sehr darauf aus sind, Ihnen Anzeigen zu zeigen
designcise

2

Versuchen Sie Ihren Code, um hinzuzufügen, dass 'Skript' die letzte Zeile ist, oder aktivieren Sie die Bildlaufkonsole (F12)

<script>
(function() {
  for (div=0; div < document.querySelectorAll('div').length; div++) {
    document.querySelectorAll('div')[div].style.overflow = "auto";
  };
})();
</script>

1

Ich wollte das Scrollen auf einer Website, die es deaktiviert hat, automatisch wieder aktivieren. Die Möglichkeit, dies in Chrome zu tun, besteht darin, "tapermonkey" herunterzuladen und dieses Skript hinzuzufügen:

https://greasyfork.org/en/scripts/387702-scroll-bar-enabler

0

Eine letzte Sache ist, nach Ereignis-Listenern> "Scrollen" zu suchen und das Löschen zu testen.

Selbst wenn Sie das Javascript löschen, mit dem sie erstellt wurden, bleiben die Listener erhalten und verhindern das Scrollen.


-3

Was für mich funktioniert hat, war das Deaktivieren des position: fixed;CSS.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.