2012-01-31 213 views
0

this page負載,在Firebug畫面顯示如下:404錯誤頁面加載

NetworkError: 404 Not Found - http://summer-festivals.cloudfoundry.com/undefined 

我已經找到了錯誤到使傳送帶上的JQuery plugin。如果我刪除這個插件和調用它的代碼,錯誤消失。

但是,我無法弄清楚插件試圖檢索導致錯誤。所有傳送帶本身使用的圖像(例如prev,next,pause按鈕)以及傳送帶顯示的圖像加載正確,我想不出還有什麼可能試圖下載。

+0

我從undefined猜測,它試圖形成一個url或類似的東西使用未定義的屬性。在某個數組中沒有空條目或者長度指示符不正確(例如,說只有9個時有10個圖像)在那裏?很明顯的想法,但你可能沒有想到他們...... – Chris 2012-01-31 16:05:18

+0

@Chris它可能是這樣的,但錯誤消息不給出一個行號,我沒有寫插件,所以我真的不知道從哪裏開始 – 2012-01-31 16:08:51

+0

該網站上似乎還有該插件的更新版本。你可能也想測試一下。 – j08691 2012-01-31 16:17:03

回答

0

在調用所有資源之前,請嘗試將主庫調用放入標題標記中。

這些應該仍然在你的頭。您的文檔ready()可以保留在頁腳中。看看這是否解決了你的問題。

<script src="/static/js/namespace.js" type="text/javascript" ></script> 
<script src="/static/js/global.js" type="text/javascript" ></script> 
<script src="/static/js/slide.js" type="text/javascript" ></script> 
<script src="/static/js/superfish/hoverIntent.js" type="text/javascript" ></script> 
<script src="/static/js/superfish/superfish.js" type="text/javascript" ></script> 
<script src="/static/js/superfish/supersubs.js" type="text/javascript" ></script> 
<script src="/static/js/tablesorter/jquery.tablesorter.min.js" type="text/javascript" ></script> 
<script src="/static/js/tablesorter/jquery.metadata.js" type="text/javascript" > </script> 
<script src="/static/js/tablesorter/init.js" type="text/javascript" ></script> 
<script src="/static/js/jquery.simplemodal.1.4.2.min.js" type="text/javascript" >  </script> 
<script src="/static/js/carousel/jquery.infinitecarousel2-thumbmod-1.js" type="text/javascript" ></script> 
+0

我試過了,它沒有什麼區別 – 2012-01-31 16:19:37

1

後做了一些調試(全部好評螢火蟲)的我把範圍縮小到for循環開始上線175:

for(i=0;i<=numImages-1;i++) 
{ 
thumb = $('img:eq('+(i+1)+')', obj).attr('src'); 
// $('#thumbs'+randID).append('<div class="thumb" id="thumb'+randID+'_'+(i+1)+'" style="cursor:pointer;background-image:url('+thumb+');display:inline;float:left;width:'+o.thumbnailWidth+';height:'+o.thumbnailHeight+';line-height:'+o.thumbnailHeight+';padding:0;overflow:hidden;text-align:center;border:2px solid #ccc;margin-right:4px;font-size:'+o.thumbnailFontSize+';font-family:Arial;color:#000;text-shadow:0 0 3px #fff">'+(i+1)+'</div>'); 
$('#thumbs'+randID).append('<div class="thumb" id="thumb'+randID+'_'+(i+1)+'" style="cursor:pointer;display:inline;float:left;width:'+o.thumbnailWidth+';height:'+o.thumbnailHeight+';padding:0;overflow:hidden;text-align:center;border:2px solid #ccc;margin-right:4px;font-size:'+o.thumbnailFontSize+';font-family:Arial;color:#000;text-shadow:0 0 3px #fff"><img src="'+thumb+'" width="'+o.thumbnailWidth+'" height="'+o.thumbnailHeight+'" alt="" /></div>'); 
// $('#thumbs'+randID).append('<div class="thumb" id="thumb'+randID+'_'+(i+1)+'" style="cursor:pointer;display:inline;float:left;width:'+o.thumbnailWidth+';height:'+o.thumbnailHeight+';padding:0;overflow:hidden;text-align:center;border:2px solid #ccc;margin-right:4px;font-size:'+o.thumbnailFontSize+';font-family:Arial;color:#000;text-shadow:0 0 3px #fff"><img src="thumbnail.php?i='+thumb+'&w='+o.thumbnailWidth+'&h='+o.thumbnailHeight+'&q=100" alt="" /></div>'); 
if(i<=o.inView) $('#thumb'+randID+'_'+i).css({'border-color':'#ff0000'}); 
unviewable.push(i+1); 
} 

的它似乎出問題的結果是在i+1在選擇器中。 objdiv#carousel,這有9個圖像(numImages正確設置爲9)。

然而,選擇器循環從1到9,而我相信它應該循環從0到8(通過粘附在觀察窗口的東西)。這意味着當它開始評估$('img:eq(9)', obj)時,它不會得到任何迴應,所以src屬性是「未定義的」。然後它會嘗試添加一個帶有「未定義」的圖像作爲src,這是它出錯的地方。

它看起來像旋轉木馬代碼中的一個錯誤,所以我可能會建議嘗試與他們談論它。你可以通過用i取代i + 1來修復它,但是我沒有提供任何保證。 :)

+0

很棒的工作,現在我大致知道錯誤在哪裏,希望我能解決它。任何想法爲什麼Firebug沒有指出錯誤的行號? – 2012-01-31 17:24:34

+0

我不知道,我很害怕。我只是通過各種各樣的位來找到它,直到我得到錯誤,然後跳入那一段代碼並重復。唯一我能想到的是它是匿名函數,例如JS引擎可能失去了它們最初來自哪裏的蹤跡。儘管如此,這種事情已經過去了。 :) – Chris 2012-02-01 10:06:48