Focusin-und focusout-Methoden funktionieren nicht in firefox
Habe ich eine Liste wie diese:
<ul class="tabs-dropdown">
<li><a href="/home">Home</a></li>
<li>
<a href="javascript:">French Alps</a>
<div>
<ul>
<li><a href="/region/french-alps/about">About</a></li>
<li><a href="/region/french-alps/properties">Properties</a></li>
</ul>
</div>
</li>
<li>
<a href="javascript:">Swiss Alps</a>
<div>
<ul>
<li><a href="/region/swiss-alps/about">About</a></li>
<li><a href="/region/swiss-alps/properties">Properties</a></li>
</ul>
</div>
</li>
<li><a href="/finance">Finance</a></li>
<li><a href="/contact">Contact Us</a></li>
</ul>
und etwas javascript wie diese:
var element = angular.element(document.querySelector('ul'));
element.children().on('focusin', function () {
angular.element(this).addClass('focused');
}).on('focusout', function () {
angular.element(this).removeClass('focused');
});
Hier ist die Geige mit den code
Grundsätzlich möchte ich die erste Liste, die Elemente an rot zu werden, wenn irgendeiner Ihrer Nachkommen haben Fokus. Ich bin empfangsbereit für die focusin-und focusout-Ereignisse auf der ersten Liste, die Elemente, dies zu erreichen.
Die beste Möglichkeit, um den Fokus auf die Elemente im Beispiel ist die Registerkarte, um Sie.
Dies funktioniert gut in Chrome und IE aber nicht im Firefox, und ich kann nicht denken, warum.
Jegliche Hilfe würde sehr geschätzt werden.
Wenn Ihr Euch fragt, warum ich Tue dies, AngularJS und jQuery nicht, weil dieser code ist Teil eines Winkel-Richtlinie und dies ist nur der Teil, der nicht funktioniert.
- Firefox nicht unterstützt
focusin
undfocusout
Ereignisse - Ah okay. Danke für die Antwort. Wissen Sie, jeder Weg, um dieses Verhalten nachahmen, oder ist es nur etwas, was ich akzeptieren sollte, kann ich das nicht?
- Sie können
focus
odermouseenter
stattfocusin
und verwendenblur
odermouseout
fürfocusout
- Auch für die Manipulation des DOM mögen, sollten Sie wahrscheinlich verwenden Sie eine Richtlinie.
- Nein, die
focus
undblur
Veranstaltungen nicht Blase zu übergeordneten Elementen. - Ja, dieser code ist Teil einer Richtlinie, ich nahm es heraus für das Beispiel. Und ja @runTarm Sie haben Recht, ich kann nicht nur Schärfe und Unschärfe, wie ich brauche, das Ereignis zu sprudeln aus dem anchor-element bis zu seinem übergeordneten
<li>
- Ja das ist, warum ich erwähnt habe
mouseenter
undmouseleave
- Wie werden Maus-Ereignisse ähnlich wie auf focus / blur-events? Dieser code wird verwendet, um zu zeigen, sub-Listen, wenn der Benutzer den Fokus auf ein übergeordnetes element in der Liste durch drücken der Tabulatortaste, um es. Maus-events sind alle fertig in CSS mit der :hover-pseudo-Selektor.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie erfassen die
focus
/blur
Veranstaltungen (nicht warten, bis Blasenbildung) stattfocusin
/focusout
Veranstaltungen in firefox wie erklären Focus Event_delegationBeispiel: http://jsfiddle.net/Zcq8F/1/
<li>
wo kann ich eine Listener für das Ereignis und wenden Sie die konzentrierte Klasse.