从信息框调用弹出图库?

时间:2012-09-13 12:43:35

标签: javascript popup image-gallery

在我的博客文件夹中,我有两个子文件夹:地图和图库。地图有一个带餐厅图标的互动城市地图,图库有每个餐厅的图像子文件夹。每个餐馆的图像文件夹目前包含两个附加文件:'get_images.php',用于从文件夹的内容创建图像数组;'index.html',用于从该数组生成图库。我可以使用以下内容从地图上的信息框调用每个餐馆的弹出图像库:

boxText.innerHTML="<a href='javascript:popUp("+'"../gallery/'+restaurant+'/index.html"'+")'>gallery</a><br/>"

其中'restaurant'变量是从mySql数据库中提取的,'popUp'是一个创建弹出窗口的函数。

这很麻烦,我想消除在每个餐馆文件夹中都有get_images.php和index.html文件的需要。我可以将get_images.php放在任何地方并从主脚本中调用它,但我很难找到一种方法来调用位于弹出窗口中的index.html中的rotate_images()函数。这是功能:

var curimg=0
function rotate_images(){
document.getElementById("gallery").setAttribute("src", ""+galleryarray[curimg])
curimg=(curimg<galleryarray.length-1)? curimg+1 : 0
}

我试过

"<a href=   'javascript:rotate_images(" + '"' + '../gallery/pizzahut/files/' + galleryarray[curimg] + '"' + ")'>gallery</a><br/>";
当我将鼠标悬停在链接上时,

显示'javascript:rotate_images(“../ gallery / pizzahut / files / pizzahut1.jpg”)',但点击它时没有任何内容。我假设它是因为我没有包含'img id'标签,但我不知道在哪里用它来表示弹出窗口。任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:0)

将您的函数rotate_images放在名为map.js的文件中。 然后在任何需要该函数的html页面中包含此文件。

示例:

<强>的index.html

<head>
<!-- include map.js here -->
<script src="path/to/map.js"></script>
</head>
<body>
(...)
<a href="#" onclick='javascript:rotate_images(" + '"' + '../gallery/pizzahut/files/' + galleryarray[curimg] + '"' + ");return false'>gallery</a><br/>
(...)
</body>