2011-11-11 55 views
2

我試圖實現一個jQuery的燈箱插件到CodeIgniter的基礎上構建一個組合網站。當點擊圖像時,我可以加載並顯示燈箱。但是,應該顯示的圖像(如close,next,prev等)不會在燈箱中加載。jQuery的Lightbox w/CodeIgniter丟失圖像

<script src="<?php echo base_url(); ?>js/libs/jquery-1.6.2.js"></script> 
<script src="<?php echo base_url(); ?>js/jquery.lightbox-0.5.min.js"></script> 
<script type="text/javascript"> 
    $(function() { 
     $('a.lightbox').lightBox(); // Select all links with lightbox class 
    }); 
</script> 

我也嘗試更改.js文件中圖像的文件路徑,但它返回斷開的鏈接。是否有某種URL輔助工具將JavaScript指向正確的方向或者我在錯誤的文件夾中?我已經嘗試了root,js文件夾(與腳本文件夾相同的文件夾)以及views文件夾。

回答

-1

最簡單的方法是運行Firebug並在Net選項卡中查找未找到的圖像,然後通過在其中移動文件或更改代碼中的路徑來更正路徑。

我假設你有包括燈箱CSS文件(我沒有看到它上面的代碼)

調用,像這樣的收藏夾時,您還可以指定所需要的圖像的位置:

<script type="text/javascript"> 
    $(function() { 
     $('a.lightbox').lightBox({ 
     'imageLoading': "<?php echo site_url(); ?>images/lightbox-ico-loading.gif", 
     'imageBtnClose': "<?php echo site_url(); ?>images/lightbox-btn-close.gif", 
     'imageBtnPrev': "<?php echo site_url(); ?>images/lightbox-btn-prev.gif", 
     'imageBtnNext': "<?php echo site_url(); ?>images/lightbox-btn-next.gif", 
     'imageBlank': "<?php echo site_url(); ?>images/lightbox-blank.gif" 
     }); // Select all links with lightbox class 
    }); 
</script> 

這個變量列出了here

0

好吧,它看起來像你正在建立你的網址。根據你的代碼,JS文件夾位於應用程序文件夾的同一級別。確保它是你的正確道路!

  • APPLICATION(<?php echo base_url();?>application/
  • SYSTEM
  • JS(<?php echo base_url();?>js/);
  • 的index.php

您可能還需要檢查,如果一個.htaccess阻止您訪問該文件夾(IIRC包自帶的「拒絕從所有」的.htaccess規則,但應用程序文件夾中。如果你有一個自定義的,修改過的.htaccess可能會阻止圖像顯示)。

而且,正如史蒂夫劉易斯所指出的那樣,如果NET選項卡或類似的東西向您顯示404資源,請檢查Firebug或IE或Chrome的開發工具(通常是鍵盤上的F12)。
您是否嘗試查看源代碼並單擊腳本鏈接?您是否嘗試直接在瀏覽器中訪問您的圖片?

0

同樣的問題在這裏,發現在這個論壇的解決方案:http://forums.modx.com/index.php?topic=44367.0

更改CSS文件中什麼也沒做,但我注意到,在股票收藏夾未指定「關閉」 GIF,我失蹤.css 文件。這讓我看到lightbox_lang_en.js,其中我 發現到圖像的路徑沒有引導斜線, 使瀏覽器在錯誤的位置查找它們。我添加了領先的 斜槓,並開始工作。這是我的修改 lightbox_lang_en.js:

0

問題是按鈕圖像路徑被破壞。 解決方案是編輯lightbox.js核心文件並修復圖像。 修復(lb-next,lb-prev,lb-close,lb-load)類的背景圖屬性。 在我的情況下,我清除了一個../

+0

編輯核心文件從來沒有聽起來像一個好主意! – dferenc

+0

是的,我同意你的意見。如果不能用JavaScript覆蓋background-image屬性將會起作用。 – tharaka