Der folgende Code wird zum Anzeigen und Verbergen von Mega-Dropdowns verwendet. Wenn Sie die Maus über eine Verknüpfung mit der Klasse von 'dropDown' bewegen, wird die untergeordnete '.dropPanel' angezeigt. Solange sich die Maus über dem Link oder dem Drop-Panel befindet, bleibt das Drop-Panel angezeigt. Bewegen Sie den Cursor an eine beliebige Stelle außer den Link oder das Panel, und das Panel ist ausgeblendet. Ziemlich grundlegende Sachen.HoverIntent löst 'out' -Funktion bei ausgewähltem Element aus
In einigen dieser Mega-Dropdown-Menüs gibt es Formulare, die ausgewählte Elemente enthalten. In Firefox ist alles in Ordnung. Im IE (8 haben keine anderen Versionen getestet), wenn Sie mit der Maus über ein ausgewähltes Element im Drop-Panel gehen, löst HoverIntent die 'out'-Funktion von dropPanelOff() aus und das Drop-Panel wird ausgeblendet.
Wie verhindere ich das?
// Apply Hover Intent to Menu Panels
$(".dropDown").hoverIntent({
sensitivity: 10,
interval: 150,
over: dropPanelOn,
timeout: 150,
out: dropPanelOff
});
// Menu Over function call
function dropPanelOn() {
$('a[rel="dropLink"]', this).addClass('hover');
$('.dropPanel', this).slideDown('fast');
}
// Menu Out function call
function dropPanelOff() {
obj = this;
$('.dropPanel', this).slideUp(100, function(){
$('a[rel="dropLink"]', obj).removeClass('hover');
$('.dropLink span', obj).removeClass('hover');
});
}
haben Sie jemals lösen Dies? Ich habe das gleiche Problem mit Firefox und Login-Formular, Firefox zeigt eine Liste der gespeicherten Benutzernamen, nachdem Sie auf diese Maus auslösen Ereignis ausgelöst wird – hugri
Noch nicht, nein. – S16