[已解决]
我正试图从头开始建立一个图片库。我有一个php文件的目录,每个文件都是相册的缩略图。每个都有这样的结构:
<div class="pic">
<img id="albcov" onclick="showAlbum(this)" src="someimg.jpg"
Alt="albumtitle"
</div>
相关js:
function showAlbum(img){
var albumname=img.alt
document.getElementById("albcont").innerHTML = [executed contents of: albumname serverside php file];
}
我如何获取所需的文件?
这个php文件将生成指定相册的缩略图列表。这反过来将显示所有完整的图像。
据我所知,这将需要某种ajax。
编辑:这是我现在使用的代码:
function showAlbum(img){
albumName = img.alt;
$('#albcont').load("/gallery/"+albumName+".php");
}
其中albumname.php包含:
<p>
<?php foreach (glob("[albumname]/*.php") as $filename)
{
include ($filename);
}
?>
</p>
其中包括该相册中具有以下结构的所有php文件:
<div class="galpic">
<img onmouseover="displayImage(this)" src="
someimg.jpg
" alt="
alt
" />
<p>
caption
</p>
</div>
JS是:
function displayImage(img) {
var imgname= img.src
var albumname= img.alt
document.getElementById("imgview").innerHTML ='<img src="'+imgname+'"/>';
}
在lonjaselter.co.nr/gallery2.php上查看的示例
您可以通过使用ajax来实现。通过jQuery,你可以很容易地完成它。为了获得更多信息,你可以jQuery AJAX Api Doc
通过使用jQuery Ajax请求代码是
/*i assume that img is id of the element that you are passing as parameter. in jQuery Way*/
function showAlbum(img){
var imgId = '#'+ img,
albumName = $(imgId).attr('alt');
$('#albcont').load("http://yourdomainname/path/to/"+albumname+".php");
}