2013-03-01 5 views
0

У меня есть это:Как вызвать зависать при наведении курсора мыши на ребенка DIV

<div id='hasHover'> 
    <div id='inner-button' style='display:none'>Click</div> 
</div> 

$('#hasHover').hover(function(){ 
    $('inner-button').toggle(); 
}); 

Это прекрасно работает. Однако, когда я перемещаю мышь на кнопку, кнопка исчезает (или очень быстро мигает). Как убедиться, что кнопка остается, когда мышь зависает на div (включая дочерний div)?

+3

'#hasHover: парить ДИВ {дисплей: блок}' – undefined

+0

@undefined Я попробовал и это работает, когда я ставлю 'дисплей: блок important'. Если я не стану важным, это не сработает. Почему это? – texasbruce

+1

@undefined О, я вижу. После этого я помещаю 'display: none'. – texasbruce

ответ

1
$('#hasHover').hover(function(e) { // <-- Create event argument 
    if(e.target.id == "hasHover") { // <-- Check the ID of the div on which event fired 
    $('#inner-button').toggle(); // <-- You missed # here 
    return false; 
    } 
    else { 
    return false; 
    } 
}); 
+0

Вы имеете в виду 'id == 'hasHover''? – texasbruce

+0

Также он все еще вспыхивает, хотя и не так часто. Я не уверен, есть ли лучшее решение для переключения кнопки? – texasbruce

+0

Можете ли вы создать скрипку? http://jsfiddle.net/ –

0

проверка целевой идентификатор

$('#hasHover').hover(function(e) { 
    if(e.target.id = "hasHover") { 
     $('inner-button').toggle(); 
    return false; 
    }else { 
    return false; 
    } 
}); 
Смежные вопросы