0

在我的博客文件夹中,我有两个子文件夹:地图和画廊。Map 有一个带有餐厅图标的交互式城市地图,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”标签,但我不知道在哪里放置它以指示弹出窗口。任何帮助表示赞赏。

4

1 回答 1

0

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

例子 :

索引.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>
于 2012-09-13T13:06:36.053 回答