2011-09-28 87 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