Come impedire la cattura / il dirottamento di tasti da siti Web in Firefox? [duplicare]


18

Alcuni siti Web (un numero crescente di questi in questi giorni, a quanto pare) dirottano varie combinazioni di tasti per eseguire azioni all'interno e definite dal sito stesso. C'è l' esempio specifico di /in GMail in una domanda inappropriata intitolata; c'è la casella di modifica StackExchange che dirotta Ctrl+ Gper "Aggiungi immagine" (piuttosto che il normale "Trova successivo" di Firefox); c'è il dirottamento di Facebook Escper nascondere un overlay piuttosto che il solito "stop caricamento". Sono sicuro che potrei continuare all'infinito con esempi, ma questo dovrebbe essere sufficiente per illustrare che questa domanda non riguarda un sito Web specifico.

Uso ampiamente la tastiera e le scorciatoie da tastiera che si comportano in modo diverso in base al sito Web in cui mi trovo mi danno molto fastidio. Se premo una scorciatoia da tastiera definita dal browser, desidero eseguire l'azione definita dal browser, non qualcos'altro. Inoltre, non desidero che determinate funzioni che sono normalmente accessibili dalla tastiera non siano accessibili dalla tastiera o che vengano improvvisamente rimappate ad altre combinazioni di tasti.

Mi rendo conto che ciò potrebbe rendere alcune cose più ingombranti in alcuni siti, ma in questo caso preferisco la coerenza.

È possibile configurare Firefox per prevenire o ignorare tali dirottamenti da parte dei siti Web e favorire il comportamento definito di Firefox?

Una soluzione che funziona almeno per le versioni 20, 21 e 22 di Firefox su Linux e Windows sarebbe l'ideale.

Modifica Mozilla Bugzilla Bug 380637 Le pagine Web dovrebbero essere in grado di sostituire le scorciatoie da tastiera del browser? sembra indicare che almeno viene guardato. Tale bug è stato inizialmente inviato a metà 2007 ed è ancora attivo a metà 2013. È interessante notare che il bug 775002 Abilita gli utenti a disabilitare javascript per dirottare le scorciatoie da tastiera era considerato un duplicato di Firefox 15.


2
Ho il sospetto che lo stiano facendo tramite Javascript. In tal caso non ci sarebbe un modo generico per disabilitarlo senza disabilitare Javascript.
Daniel R Hicks,

sì forse api.jquery.com/keypress . Sarebbe interessante se ci fosse un addon che permettesse la riscrittura selettiva .js sul lato client. potresti quindi commentare queste chiamate usando regex o simili
James

4
Anche se eseguito tramite Javascript, da qualche parte deve essere coinvolto un listener di stampa chiave e tale funzionalità è fornita dal browser . Non vedo alcun motivo per cui quel codice non possa essere modificato in modo tale che il browser interpreti prima qualsiasi sequenza di tasti (forse con i tasti modificatori) e se il browser esegue un'azione in risposta, la pressione del tasto non viene trasmessa al Javascript fornito dal pagina web. Rendere configurabile tale comportamento (se non si desidera esporlo attraverso la GUI delle impostazioni, c'è ancora: la configurazione che già consente l'accesso a molte di queste impostazioni avanzate) dovrebbe essere abbastanza facile.
un CVn

@Downvoter Perché il downvote?
un CVn

1
@Karan Quella domanda ha tre anni e la risposta accettata parla di Firefox 3.6 . Anche se non sono esattamente d'accordo con l'attuale schema di numerazione delle versioni di Firefox, probabilmente da allora siamo ben al di sopra delle 20 versioni, in tre anni di sviluppo. Cosa dire che le risposte in esso sono ancora valide per le versioni correnti di Firefox?
un CVn

Risposte:


1

È possibile utilizzare il plug-in Vimperator. Destinato a rendere Firefox un'interfaccia solo per tastiera, ascolta innanzitutto qualsiasi sequenza di tasti che si preme ed esegue le proprie azioni. A volte, quando è necessario utilizzare i dirottamenti della tastiera definiti nel sito, è possibile abilitare / disabilitare una modalità pass-through per un certo periodo.

Prendiamo il caso di GMail, che offre una serie di scorciatoie da tastiera. Ma quando si preme un tale collegamento, viene gestito dallo stesso Vimperator. Ad esempio, premendo /all'interno di GMail di solito si posiziona il cursore nella casella di ricerca. Ma premendo /in una pagina GMail quando Vimperator è attivo, si avvia la ricerca di pagine predefinita (ricerca ala nell'editor Vim). Lo stesso caso per altre scorciatoie GMail come o co anche Ctrl+Enter. Ciò significa che, Vimperator sarà il nono ascoltatore di sequenze di tasti in Firefox, superando anche i primi 1 ascoltatori possibili in modo che le scorciatoie da tastiera siano globali in tutto il browser.

Vimperator è fondamentalmente un wrapper Vim su Firefox. Se ti senti a tuo agio con Vim, Vimperator sembrerà un amico perduto da tempo. :-)

Comunque, alcune scorciatoie da tastiera di Vimperator per iniziare con:

o<link>apre il. Questa sequenza fa attivare la riga di comando di Vimperator (nella parte inferiore dello schermo) e il comando open <link>verrà posizionato lì, con lo spazio al centro inserito per te. Premere Enterper caricare la pagina.

t<linkattiva il comando tabopene apre il collegamento in una nuova scheda.

gtpassa alla scheda successiva. Ctrl+Tabe Ctrl+PgUp/Dnanche lavorare.

gT passa alle schede precedenti.

ZZ chiude FF dopo aver salvato la sessione.

fetichetta tutti i collegamenti nella visualizzazione della pagina con i numeri evidenziati. Digitando un numero si apre il collegamento. Tutti i campi evidenziati sono ricercabili. Quindi, invece di digitare i numeri, puoi digitare qualsiasi testo nel link evidenziato a cui vuoi andare.

F apre i collegamenti in una scheda di sfondo.

h j k lper navigare nella pagina left down uperight

Vimperator offre una serie di scorciatoie da tastiera (e certamente rende l'intera esperienza indolore senza il mouse) e la maggior parte delle scorciatoie predefinite di FF funzionano normalmente. Puoi trovare scorciatoie per evidenziare il testo, copiarle, navigare nella pagina come se fosse un documento di testo, ingrandire / rimpicciolire, simulare il passaggio del mouse su un collegamento e semplicemente inserire qualsiasi cosa che possa far rispondere Firefox a un mouse.

L'unico posto in cui non funziona fino a quando l'ho usato è all'interno delle caselle Flash, perché FF non riesce a raggiungere ciò che contiene.

Potrebbe essere necessario abituarsi un po 'se non si conosce Vim o non si è nuovi. Tuttavia, una guida online davvero estesa è solo a :h<Enter>portata di mano.

Ecco il Link .


apparentemente, vimperator non è più compatibile con le moderne build di firefox.
sylvainulg,

-1
  • Prova a utilizzare il plugin noscript per firefox per disabilitare alcuni script JS http://noscript.net/

1
NoScript consente di caricare o meno tutto il Javascript da domini particolari. Lo uso già ed è fantastico in ciò che fa, ma hai provato ad usare Facebook o StackExchange senza Javascript? L'esperienza è a metà tra piuttosto dolorosa e decisamente inutilizzabile. Disabilitare tutto Javascript a livello globale per Facebook solo per riportare il mio tasto Esc alla normalità è piuttosto eccessivo.
un CVn

prova a contrassegnare lo script come non attendibile Pic: i.stack.imgur.com/45aAv.png o usa il proxy per bloccare qualsiasi risposta da uno script, ad es. violinista
Homer Simpsons

Se uso NoScript per contrassegnare, ad esempio, facebook.com come non attendibile, non verrà eseguito JavaScript proveniente da facebook.com. Questo non è quello che voglio. Si prega di rileggere la domanda.
un CVn

Usalo usando questo link: addons.mozilla.org/sv-se/firefox/addon/greasemonkey e il link dello script: userscripts.org/scripts/show/125936 <= guarda qui ("if (src.search (/ bad \. js /)! = -1) {")
Homer Simpsons

Ancora non vedo come questo mi aiuti. Puoi modificarlo nella tua risposta con una spiegazione più completa di come risponde alla domanda?
un CVn
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.