2013-04-23 58 views
0

对于我正在处理的页面,我有4个隐藏的div,每个隐藏的div都可以用Jquery点击。出于某种原因,当我点击其中一个div时,它会淡入,但也会在其他div中淡入。如果我在第一次尝试淡入其他div,则不会发生这种情况。任何猜测为什么?你可以明白我的意思在这里http://www.unearthingfilm.com/optimized.htmlJquery fadeIn立即褪色2 divs

如果你去到菜单项和命中说书并点击书,DIV淡入,但这样做的一个下方进一步下跌

trigger3.click(function() { 
     openBook.fadeIn(1000); 
     closed.delay(1000).fadeIn('slow') 
    }); 
    closed.click(function() { 
     openBook.delay(700).fadeOut('slow'); 
    }); 


    trigger4.click(function() { 
     openChest.fadeIn('slow'); 
    }); 


#openChest{ 
    background-image: url(../images/openChest.png); 
    position: absolute; 
    z-index: 10; 
    height: 640px; 
    width: 574px; 
    top:4650px; 
    left:250px; 
    display:none; 
} 
#openBook{ 
    display:none; 
    position: absolute; 
    height: 542px; 
    width: 950px; 
    left: 25px; 
    top: 3300px; 
    z-index:11; 
    background-image: url(../images/openBook.png); 
    } 
+0

你可以展示一些HTML吗?通常情况下,当目标'div'嵌套(故意或意外)时,会发生这种情况 – shanabus 2013-04-23 17:26:42

+0

我不完全确定没有看到您的html,但尝试在'click'函数中使用'event.stopPropagation()'来停止事件冒泡。 – 2013-04-23 17:27:22

回答

1

在源码你这样做:

var trigger1, trigger2, trigger3, trigger4 = $('#trigger1, #trigger2, #trigger3, #trigger4')

这只集的trigger4$('#trigger1, #trigger2, #trigger3, #trigger4')时,VARS其余不被初始化。

+0

是的你是对的。那是我为我制作的一些动画制作的监督变量。谢谢! – Greg 2013-04-23 18:03:13

+0

没问题,很高兴我可以帮忙。 – 2013-04-23 18:19:09

0

除非你在什么地方定义的OpenBook作为一个变种,你的jQuery应该是这样的:

$('#openBook').fadeIn(); 

我不知道确切原因,但无法正确说明你的选择jQuery是越来越糊涂了。所显示的代码中的所有选择器都一样。

http://api.jquery.com/category/selectors/