Einfache Frage, auf die ich keine Antwort finden kann: Wie kann ich JavaScript (oder jQuery) verwenden, um die Auswahl von Text aufzuheben, der auf einer Webseite ausgewählt werden kann? EG-Benutzer klickt und zieht, um ein bisschen Text hervorzuheben - ich möchte eine Funktion deselectAll () haben, die diese Auswahl löscht. Wie soll ich es schreiben?
Danke für die Hilfe.
javascript
jquery
man1
quelle
quelle
document.selection
die Existenz einerempty()
Methode davon impliziert . Sie haben die Methode in jedem anderen Fall getestet, also können Sie sie auchempty
im letzten Fall testen .window.getSelection().removeAllRanges();
funktioniert gut in IE (Rand) und Safari.Testen Sie die gewünschten Funktionen am besten direkt:
quelle
Stand der Abwahl 2014
Ich habe selbst recherchiert. Hier ist die Funktion, die ich geschrieben habe und die ich heutzutage benutze:
Grundsätzlich
getSelection().removeAllRanges()
wird derzeit von allen modernen Browsern (einschließlich IE9 +) unterstützt. Dies ist eindeutig die richtige Methode für die Zukunft.Kompatibilitätsprobleme wurden berücksichtigt:
getSelection().empty()
document.selection.empty()
Aktualisieren
Es ist wahrscheinlich eine gute Idee, diese Auswahlfunktion für die Wiederverwendung zusammenzufassen.
Ich habe dies zu einem Community-Wiki gemacht, damit Sie den Benutzern Funktionen hinzufügen oder Dinge aktualisieren können, wenn sich die Standards weiterentwickeln.
quelle
Hier ist die akzeptierte Antwort, jedoch in zwei Codezeilen:
Die einzige prüfe ich nicht tun , ist für die Existenz von removeAllRanges - aber AFAIK gibt es keinen Browser, der entweder hat
window.getSelection
oderdocument.selection
aber nicht haben entweder ein.empty
oder.removeAllRanges
für diese Eigenschaft.quelle
Mit window.getSelection () können Sie auf den ausgewählten Text zugreifen. Von dort aus können Sie einige Dinge tun, um ihn zu bearbeiten.
Lesen Sie mehr: Entwickler Mozilla DOM Auswahl
quelle
Fügen Sie dies Ihrem Skript hinzu, um Rechtsklicks und Textauswahl zu vermeiden.
Ausnahmen können zu var 'om' hinzugefügt werden.
quelle