2011-09-28 60 views
0

我打电话给一个使用jQuery的colorbox,并试图阻止地址改变,但似乎每次都会触发地址更改。这里是我当前的代码:colorbox和防止默认不能一起工作?

<div style='display:none'> 
    <div id='send_alert_div' class="wysiwyg_container"> 
     <h2>Contact Us</h2> 
     .... 
    </div> 
</div> 

<a class="contact" href="#" >Contact</a> 

我的JavaScript代码来处理单击事件联系

$(".contact").click(function(e){ 
    e.preventDefault(); 
    $(".contact").colorbox({width:"600px", height: "420px", inline:true, href:"#send_alert_div"}); 
}); 

有谁明白为什么这是行不通的?每次点击它都会触发地址更改。

回答

1

我不知道你在说什么地址变化。那必须由你没有包括的一些脚本来控制。此外,colorbox已经应用了e.preventDefault();所以你可以简化上面的代码,简单地说:

$(".contact").colorbox({width:"600px", height: "420px", inline:true, href:"#send_alert_div"}); 

你的其他问题听起来没有关系。如果不知道哪些代码会导致您的“地址更改”,那么很难指导您做什么,但如果它是简单的事件绑定,则可以通过将以上代码替换为以下代码来阻止它:

$(".contact").unbind('click').colorbox({width:"600px", height: "420px", inline:true, href:"#send_alert_div"}); 
+0

我正在使用jquery地址插件,所以这是由于某种原因,我选择了我的地址更改。我尝试了解绑,但它没有改变。我会再看看代码,看看我是否错过了一些东西。 – Paul

+0

我最终将我的href元素更改为span,并且一切都很好。谢谢! – Paul