2014-01-21 87 views
0

我想使用DirectoryIterator動態加載圖像。問題在於圖像在谷歌瀏覽器和IE瀏覽器中正如預期的那樣加載,但在Firefox中沒有任何顯示。圖像不加載在Firefox(動態圖像標籤生成)

下面是我正在處理的代碼。

$dir = new DirectoryIterator(getcwd()."\emoticons"); 
foreach($dir as $folder) 
{ 
    if(strlen($folder) > 2) // sometimes $folder is blank so. 
    { 

    $files = new DirectoryIterator(getcwd()."\emoticons\\".$folder); 

    echo "<br>".$folder; 
    foreach($files as $file) 
    { 
    echo "<img src = 'emoticons\\".$folder."\\".$file."'></img>"; // doesnt work in FF. 
    } 

    } 
} 

我不知道爲什麼這可能會發生。如果有人有任何關於這個問題的經驗,那麼請分享。

Regards, Sameeksha。

+1

請注意,'\'是一個符號,它是在互聯網上_not_有效。它在MS-Windows世界中被使用。所有其他系統(也是互聯網)使用標準的文件夾分隔符:'/'。噢,以及:'img'標籤內'src'屬性的內容必須用引號括起來,通常用雙引號(src ='「...」')。 – arkascha

+0

總是在試圖調試某些在瀏覽器中「不起作用」的東西時:您需要問瀏覽器問題是什麼,而不是我們。打開瀏覽器內部的開發控制檯(在此爲FF安裝FireBug擴展),並查看瀏覽器本身引發的錯誤。然後你有你的答案。 – arkascha

+0

@arkascha ...我沒有看到控制檯中的錯誤。 –

回答

2

由「/」

請更換「\​​」這是新代碼:

$dir = new DirectoryIterator(getcwd()."/emoticons"); 
foreach($dir as $folder) 
{ 
    if(strlen($folder) > 2) // sometimes $folder is blank so. 
    { 

    $files = new DirectoryIterator(getcwd()."/emoticons/".$folder); 

    echo "<br>".$folder; 
    foreach($files as $file) 
    { 
    echo "<img src = 'emoticons/".$folder."/".$file."'></img>"; // doesnt work in FF. 
    } 

    } 
} 
0

你在FF中有adBlock嗎?有時候adBlock會自動隱藏橫幅。

或者您可以使用Firebug插件來檢查圖像路徑。

+1

哦,我的天啊,他又一次!令人印象深刻的「答案」... – arkascha

+0

@arkascha:諷刺評論並沒有幫助。我已經看到adBlock玩弄討厭的技巧,所以我給這個答案+1。 – JFK

+0

他的評論是什麼「諷刺」? – richard