2014-02-12 188 views
0

我有一个按钮链接到fancybox和另一个切换隐藏的联系人窗体。 他们都独自工作,但当他们在一起时,我无法让fancybox工作。我认为 它可能与我的脚本中的stopPropagation有关?有没有人知道我能做些什么来阻止他们的冲突?2 jQuery脚本冲突

<div class="buttoncont"> 
     <div class="innercont"> 
     <div class="thanks" style="display:none;"><p>Thanks for contacting class</p></div> 
      <div class="social"> 
       <!— FANCYBOX BUTTON LINK —> 
       <div class="fancybox-media" href="http://vimeo.com/9532951" rel="media-gallery"> 
       <a class="btn"> <span class="playarrow"></span><span>watch fancybox preview</span></a></div> 
        <!— FANCYBOX BUTTON LINK END—> 
       <!— CONTACT US LINK —> 
       <a class="btn2" href="#innercont" id='link'><span class="contactbbl"></span><span>contact us</span></a> 
        <!— CONTACT US LINK END —> 
      </div> 
<div id="subscribe-pop”><p>DIV POPUP TRIGGERED FROM CONTACT US LINK</p></div> 

<div id="badge1”> 
    <a href="http://www.site1.com"><img class="badge1" src="images/badge1.png" height="auto" width="100%"></a> 
</div> 
<div id=“badge2”> 
     <a href="http://www.site2.com"><img class="badge2” src="images/badge2.png" height="auto" width="100%"></a> 
</div> 

</div> 
</div> 

联系表SCRIPT

<script type="text/javascript"> 

$('html').click(function() { 
    $('#subscribe-pop').hide(); 
    $('.thanks').hide(); 
}); 

$(‘.innercont’).click(function(e){ 
    e.stopPropagation(); 
}); 

$('#link').click(function(e) { 
$('#subscribe-pop').toggle(); 
}); 

$('#mc_embed_signup .button').click(function(e) { 
$('#subscribe-pop').hide(); 
$('.thanks').toggle(); 
}); 

$('#mc_embed_signup .cancel').click(function(e) { 
$('#subscribe-pop').hide(); 

}); 

$('.thanks').click(function() { 
$('.thanks').hide(); 
}); 

</script> 

FANCY BOX SCRIPT

<script type="text/javascript"> 
     $(document).ready(function() { 
      $('.fancybox-media') 
       .attr('rel', 'media-gallery') 
       .fancybox({ 
        padding: 0, 
        openEffect : 'none', 
        closeEffect : 'none', 
        prevEffect : 'none', 
        nextEffect : 'none', 
        arrows : false, 
        helpers : { 
         media : {}, 
         buttons : {} 
        } 
       }); 
         }); 
    </script> 

回答

0

这可能是因为jQuery的冲突。

总是有两个JavaScript库

之间冲突的机会尝试

var $j = jQuery.noConflict(); 

现在你可以在你的jQuery代码使用$j,而不是$

jquery conflict

+0

谢谢,我添加了'变量$ J = jQuery.noConflict();'在我的jQuery的开始,改变了所有的'$''到$ j',但没有奏效。 – rizzledon

+0

您是否知道我可能能够用于显示/隐藏联系表单的另一种方法,以避免它们发生冲突? – rizzledon