2009-12-29 5 views
1

비디오 플레이어 페이지가 있고 마우스가 움직일 때 재생 목록 div 만 페이드 인되도록하고 마우스를 3 초 동안 사용하지 않으면 페이드 아웃합니다. 당신이 어디뿐 아니라 관련 위에 마우스 이동을 의미 가정JQuery : mousemove 페이드 인/아웃 요소

답변

4

에서보세요 사업부의 클래스는 "fadeobject"이며 ID가 ""비디오 츄 "입니다

var fadeout = null; 
$("html").mousemove(function() { 
    $("div.fadeobject").stop().fadeIn("slow"); 
    if (fadeout != null) { 
    clearTimeout(fadeout); 
    } 
    fadeout = setTimeout(hide_playlist, 3000); 
}); 

function hide_playlist() { 
    $("div.fadeobject").stop().fadeOut("slow"); 
} 

마우스 타이머 세의 후 사업부를 퇴색하기 시작 이동 때마다 : 페이지에 mousemove() 이벤트 핸들러를 적용 <div> econds 및 이전 타이머 (있는 경우) 취소됩니다.

참고 :stop() 여기에 필요한 엄격하게이 아니라 여러 애니메이션/효과를 처리 할 때 좋습니다.

편집 : 수정 된 함수 이름 오타 및 업데이트 된 setTimeout 인수로 인해 제한 시간 호출이 작동합니다.

+0

운. (http://pastebin.com/f50026c62 분명히 코멘트에 코드를 넣을 수 없습니다.) 뭔가 빠졌습니까? 지금까지 도움을 주셔서 감사합니다. – Stephen

+0

코드에 오타가 있습니다 : hide_playerlist vs hide_playlist – 828

+0

setTimeout에 밀리 초가 걸리지 않습니까? http://www.w3schools.com/jsref/met_win_settimeout.asp –

1

나는 이것을 사용하고 그것은 잘 작동 :

$(document).ready(function() { 
    $('.elementClass').fadeTo(0, '0.5').hover(function() { 
     $(this).fadeTo(500, 1); 
    }, function() { 
     $(this).fadeTo(350, '0.8'); 
    }); 
});