2011-07-27 63 views
1

我正在處理設計師傳遞給我的HTML/Jquery代碼,以便我可以將CI集成到其中。我遇到的問題是,某些鏈接使用jQuery來彈出打開燈箱,但一旦放入CI這些不再工作。如果我將鏈接指向控制器,然後加載彈出視圖,它只是將彈出窗口加載爲整個頁面,而不是簡單的陰影框。CI:Jquery Pop-up

我看過CI anchor_pop ...這是使用正確的東西嗎?換句話說,在使用設計人員提供的代碼時,彈出窗口完美打開(居中,右對齊等)。在使用anchor_pop時,它會調用我的頁面,它也會打開它的時髦。有沒有簡單的方法來簡單地調用頁面/ jquery函數,因爲我的設計師已經設置瞭如下所示?謝謝。

從我的視圖中的代碼片段如下:

的jQuery:

$(function(){ 
$('form').jqTransform(); 
}); 
$(window).load(function () { 
$(".join-button a").fancybox().trigger('click'); 
}); 

鏈接:

<li class="join-button"><a href="pupup1.html">join</a></li> 

編輯: 我試圖建議去除.trigger的('點擊'),但沒有運氣。下面是我所希望發生的,與發生什麼的圖像沿圖像:

Popup

enter image description here

回答

0

我認爲你應該做的:

$(window).load(function () { 
    $(".join-button a").fancybox(); 
}); 

如果你.trigger('click')你模擬一個簡單的點擊鏈接,所以你被帶到該頁

0

你不需要把代碼放入功能$(window).load()。 Fancybox是一個jQuery插件,因此它應該在常規的$(document).ready()函數中使用。

尼古拉是正確的,但你不想觸發點擊元素。試試這個:

$(function(){ 
    $('form').jqTransform(); 
    $(".join-button a").fancybox(); 
}); 

假設你有所有的JS文件加載正確,這應該工作。

+0

謝謝,這讓我更接近。當我拿起fancybox發射時,它沒有加載實際的頁面。我在我的Views文件夾中有實際的html(或者在這種情況下是php)頁面...我仍然需要能夠訪問它來傳遞數據,但是我應該如何在代碼中引用它一個簡單的href似乎沒有工作,並且使用anchor_pop會導致打開一個新窗口?再次感謝。 – user464180

+0

當你說你正在使用「anchor_pop」時,你的意思是你使用CodeIgniter的URL助手中的「anchor_popup」方法嗎?如果是的話,那可能與Fancybox衝突,因爲它會在鏈接上使用某些內聯JS加onclick屬性。 –