我不知道是否有人可以幫助,基本上我有這個JavaScript的淡入淡出當用戶滾動頁面,但是,我想把條件放在JavaScript說只有在用戶點擊另一個div元素後淡出。在div上點擊運行javascript?
比如我需要的用戶,他們向下滾動頁面之前閱讀一段文字和這個div淡入,在這一段文字,是一個div叫
所以一旦用戶閱讀文本,他們將點擊'exit_profile_intro4'這將關閉文本框, 只有那麼我想要的JavaScript滾動和淡入div工作。可有人請告訴我怎麼可以這樣做:我已經試過
<script>
$('div.exit_intro4').click(function(){
$(window).scroll(function(){
var leftToBottom = $(document).height() - $(window).height() - $(window).scrollTop();
var distanceFromTop = $(window).scrollTop();
if(distanceFromTop > 300 && !$("profile_intro_case5").is(":visible")
&& leftToBottom > 1000 && !$(".profile_intro_case5").is(":animated")) {
$(".profile_intro_case5").fadeIn(1000);
}else if($(".profile_intro_case5").is(":visible") && (distanceFromTop < 300 || leftToBottom < 1000) && !$(".profile_intro_case5").is(":animated")){
$(".profile_intro_case5").fadeOut();
}
});
});
</script>
原:
<script>
$(window).scroll(function(){
var leftToBottom = $(document).height() - $(window).height() - $(window).scrollTop();
var distanceFromTop = $(window).scrollTop();
if(distanceFromTop > 300 && !$("profile_intro_case5").is(":visible")
&& leftToBottom > 1000 && !$(".profile_intro_case5").is(":animated")) {
$(".profile_intro_case5").fadeIn(1000);
}else if($(".profile_intro_case5").is(":visible") && (distanceFromTop < 300 || leftToBottom < 1000) && !$(".profile_intro_case5").is(":animated")){
$(".profile_intro_case5").fadeOut();
}
});
</script>
我看到你唯一的問題是多次點擊會添加多個處理程序。你有什麼問題? – 2013-04-07 21:25:44
控制檯中的任何錯誤代碼? – Aprillion 2013-04-07 21:26:22
請不要在點擊事件中添加事件。這只是要求麻煩。改用條件狀態(見下文)。 – Sukima 2013-04-07 21:30:23