我最近從靜態(只有html + css)更改我的網站使用PHP來生成HTML允許我examply有一個畫廊顯示特定文件夾中的所有圖像等。javascript document.getElementById(id).src = ???不工作,因爲PHP的創建html
我的JavaScript
function makeBigSimple(id){
var src = document.getElementById(id).src;
document.getElementById("imageForShow").src = src;
}
我的PHP只是回聲出HTML。你會感興趣的部分是這個html。
<div class="bigImage" id="bigImage" style="background-color: rgba(26,18,255,0.4)">
<img id="imageForShow" src="images/gallery/showOff1.jpg" alt="Big Image" onLoad="resize('imageForShow','bigImage')">
</div>
<div class="smallImages">
<ul>
<li><img id="image0" src="images/gallery/showOff1.jpg" onClick="makeBigSimple('image0')" alt="Click to Enlarge" onLoad="resize('image0')"/></li>
<li><img id="image1" src="images/gallery/showOff2.jpg" onClick="makeBigSimple('image1')" alt="Click to Enlarge" onLoad="resize('image1')"/></li>
<li><img id="image2" src="images/gallery/showOff3.jpg" onClick="makeBigSimple('image2')" alt="Click to Enlarge" onLoad="resize('image2')"/></li>
<li><img id="image3" src="images/gallery/showOff4.jpg" onClick="makeBigSimple('image3')" alt="Click to Enlarge" onLoad="resize('image3')"/></li>
<li><img id="image4" src="images/gallery/showOff5.jpg" onClick="makeBigSimple('image4')" alt="Click to Enlarge" onLoad="resize('image4')"/></li>
</ul>
</div>
這些圖像由用於.PNG和.jpg gfiles搜索文件夾genereated,如果他們通過這些參數它們被置於陣列和該陣列中加入與所述參數的列表項中的每一項。我也有一個與「image1,image2」等可見的計數器。
我試圖做一個print.getElementById(「bigImageForShow」)。src之前(顯示我的第一個圖像(圖像/畫廊/showOff1.jpg))和之後。
之後的輸出實際上是我在我的網站上點擊過的圖片。但是src在視覺方面並沒有改變,如果我檢查「大圖片」元素,我仍然有開始圖片的src,甚至是document.getElementById(「bigImageForShow」)。
如果監聽程序使用'makeBigSimple(this)'傳遞給它的元素的引用,那麼函數將簡化爲'function makeBigSimple(el){document.getElementById(「imageForShow」)。src = el.src}'。 – RobG
的確如此,其實在日前的一個類似系統上做了這個,感謝提示 – Wisienkas
找到了答案,在第一行裏面這樣的php腳本就這樣 <?php self :: makeSite(); 這是創建網站的主要方法的名稱,使其無法正常工作後,我刪除該行一切工作。不知道爲什麼這是壽 – Wisienkas