2016-05-06 14 views
-1

Meine App funktioniert gut in Chrome und IE. Aber in Firefox konzentrieren sich die Divs immer weiter.Legen Sie alle Divs nicht Fokus zulassen

Ich kann zu jedem gehen und es auf tabindex="-1" haben, aber das ist eine Menge divs. Es macht meinen Code unordentlich und schließlich werde ich einen vergessen und die Tab-Reihenfolge durcheinander bringen.

Gibt es eine Möglichkeit, Firefox nicht auf divs (wie Chrome und IE11) zu konzentrieren?

HINWEIS: Es scheint, dass Tabindex nicht über CSS festgelegt werden kann.

+0

Gibt es keinen Grund, das Attribut nicht über jquery zu setzen? – Wobbles

+0

Ein 'div' ist standardmäßig kein _active_ Element, daher wird es nicht fokussiert. Wenn das für Sie in FF passiert und Sie müssen 'tabindex =" - 1 "' hinzufügen, um dies zu verhindern, dann ist das Problem wahrscheinlich woanders. –

Antwort

2

JQuery sollte in der Lage sein, dies leicht zu handhaben:

$("div").attr('tabindex', -1); 

$() gibt eine Sammlung von passenden Elemente, in diesem Fall werden alle divs, damit die attr zu jedem der Elemente in der Auflistung angewendet wird.

Aber div 's sollte normalerweise nicht in der Lage sein, zu konzentrieren, so dass möglicherweise ein Skript auf Ihrer Website ausgeführt wird, die genau das tut, was meins tut, aber versehentlich. Versuchen Sie, alle Tabindex-Attribute aus allen Elementen zu entfernen, die keine Formularelemente sind. Probieren Sie zusätzlich ein ähnliches jquery-Skript aus, um sie zu entfernen.

$("div").removeAttr('tabindex'); 
+0

Durch Hinzufügen von 'tabindex =" - 1 "' kann das div fokussiert werden, es wird nur aus der Tab-Reihenfolge entfernt. Entfernen Sie die Tabindex-Attribute vollständig und die Elemente können nicht mehr den Fokus erhalten. – zzzzBov

+1

Offensichtlich, wenn das OP die Frage stellt, gibt es etwas, das er nicht kontrollieren kann, das stört die Norm. – Wobbles

+0

Dem widerspreche ich nicht, weshalb ich vorschlage, dass Sie das Attribut * entfernen *, anstatt es zu setzen. – zzzzBov

Verwandte Themen