2010-05-18 2 views
3

Existe-t-il un événement pour les situations où quelque chose est sélectionné sur une page HTML comme du texte arbitraire dans un élément span? Est-ce qu'une telle chose existe ou faut-il interroger à intervalle régulier & analyser le window.getSelection()?Événement sur la sélection HTML

Je souhaite intercepter ce type d'événement à partir d'une extension de navigateur (Chrome).

Répondre

1

New York Times implémente certaines fonctionnalités de type «sur sélection» sur tous leurs articles sans surveillance pour un événement spécifique «onselection». Example here, mettez en surbrillance du texte et vous verrez un "?" pop up que vous pouvez utiliser pour la recherche.

Here's the relevant code. Apparemment, ils ressemblent à des onmouseup d'un texte de corps, ils obtiennent la sélection de document (ou de fenêtre) et l'utilisent.

L'événement "onselect" existant est spec'd to only apply to input and textarea elements.

+0

Evénement "OnMouseUp" sur le 'body' ... pourquoi chercher une solution complexe quand il y en a une simple! Merci!! – jldupont

+0

Eh bien, le simple n'est pas tout à fait étanche. Vous pouvez effectuer une sélection sans utiliser la souris (par exemple, le décalage du clavier + les flèches dans certains navigateurs), ce que cette approche n'attrapera pas. – bobince

0

Dans jQuery, vous pouvez utiliser la fonction select() pour lier un gestionnaire d'événements à l'événement select. Pour plus d'informations, voir http://api.jquery.com/select/

+0

hmmm ... il semble que l'on doive modifier la page pour "injecter" des gestionnaires ... ce n'est pas ce que je demande ici. – jldupont

Questions connexes