我最近从静态(只有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