2010-05-03 4 views
27

Come domanda davvero. Ho una casella di input sulla mia pagina che vorrei ignorare quando si naviga usando il tasto tab della tastiera.Posso ignorare qualche elemento del sito web quando navighi usando il tasto tab?

Sto usando questa casella di input come un semplice honeytrap bot e lo posiziono fuori dalla pagina, quindi al momento in cui si utilizza il tasto tab, si guarda all'utente come se nulla fosse attivo quando si collegava a questo elemento.

+1

Invece di posizionarlo fuori dalla pagina, posizionarlo in un punto dall'aspetto normale e coprirlo con un altro elemento. –

+2

@Rex - che realizza ... cosa? Sarà ancora nell'ordine di tabulazione. – Quentin

+0

@David e imposta anche il tabindex. –

risposta

38

È possibile impostare tabindex="-1" su questo elemento in modo che venga ignorato nell'ordine del tantino. 0 dice al browser di capire l'ordine di tabulazione su se stesso, -1 dice al browser di ignorarlo.

9

È possibile utilizzare l'attributo tabindex per definire l'ordine in cui il tasto tab deve scorrere tra gli elementi. Se imposti tabindex="-1", l'elemento verrà saltato.

Ulteriori informazioni sono disponibili qui http://www.webcheatsheet.com/HTML/controll_tab_order.php per esempio.

UPDATE mutato tabindex = "0" a "-1" sulla base dei commenti

+0

Questa è solo una parte della soluzione, tuttavia - la messa a fuoco terminerà sull'elemento in qualche punto, solo più tardi. –

+2

Questo non è corretto: http://jsfiddle.net/6QuHc/ –

+0

Tabindex = 0 fa sì che l'elemento venga indicizzato utilizzando le normali convenzioni - http://www.w3.org/TR/html5/editing.html#negative- tabindex - è usato per aggiungere elementi alla sequenza normale che non sono normalmente focalizzabili, non per escluderli. – Quentin

1

display: none invece.

+0

Vero, ma i robot più avanzati potrebbero verificarlo. (come potrebbero per posizionarlo fuori dalla pagina, ma è molto avanzato). – Konerak

+0

Ciò è, ipoteticamente, possibile. OTOH, se lo off-screen, lo screen reader lo presenterà agli utenti reali. – Quentin

+0

Ho preso in considerazione l'impostazione di visualizzazione su nessuno, ma ero preoccupato che i bot trovassero molto più facile da controllare rispetto al posizionamento off-page, come affermava Konerak. L'avevo già testato con un software di lettura dello schermo e ho notato che appare come una casella di testo non etichettata. Questo è ovviamente un problema, ma è uno di quelli con cui dovremo convivere per il momento e dargli un'altra occhiata in seguito. – thor

Problemi correlati