2011-09-20 4 views
2

간단한 jQuery 질문 div가 열리는 트리거가 있습니다. 이제는 마우스가있는 한 div가 열려 있어야합니다. div.트리거를 통해 div를 열고 열어 둔 div에 마우스가 열려있는 한 열어 두십시오.

예 : (트리거) -> 열림 (상자) -> 상자 안에 마우스가 있으면 상자를 열어 두십시오.

어떻게하면됩니까?

http://jsfiddle.net/Gq2LX/

+0

아차는, 그것을 해결 주요 사업부를 만들고, 그것을 – veer

답변

2

문제는 당신이 당신의 트리거 사업부에 노력하고있는 호버입니다. trigger div에서 나가면 mouseOut 함수가 호출됩니다.

DOM을 약간 변경하고 트리거를 내부에 놓으면 트리거가 작동합니다.

HTML :

<div id="trigger"> 
    <span>This is a trigger</span> 
    <div id="box"></div> 
</div> 

스크립트

$('#trigger').hover(function() { 
    $('#box').show(); 
}, function() { 
    $('#box').hide(); 
}); 

CSS : 나 #trigger 요소의 폭을 변경

#box {width:350px;height:400px;border:1px solid #000;display:none;} 
#trigger {width:350px;} 

(기본적으로 div 요소 100 % 소요) 그리고 마크 업을 변경했습니다 (트리거 내부에 상자 추가)

작업 예 :

http://jsfiddle.net/Gq2LX/2/

+0

일을에 호버 기능을 넣어 그것은 OP가이 것을 받아들이는 것에 관심이없는 것처럼 보입니다. :) 나는 거의 당신의 고통을 느낍니다. –

관련 문제