-2

[解决了]

我正在尝试从头开始构建图片库。我有一个 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上查看的示例

4

1 回答 1

1

你可以通过使用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");
}
于 2013-02-28T22:24:54.737 回答