我有一个JavaScript变量imgIndex
我想发送给<a href="...">
,因此我可以根据imgIndex
更改ID
使用Javascript:
<script type="text/javascript">
var imgArray = [<?php echo implode(',', getImages($cat, $site)) ?>];
window.imgIndex = <?php echo $imgid ?>;
$(document).ready(function() {
var img = document.getElementById("showimg");
img.src = imgArray[<?php echo $imgid ?>];
$(document).keydown(function (e) {
var key = e.which;
var rightarrow = 39;
var leftarrow = 37;
var random = 82;
if (key == rightarrow)
{
imgIndex++;
if (imgIndex > imgArray.length-1)
{
imgIndex = 0;
}
img.src = imgArray[imgIndex];
}
if (key == leftarrow)
{
if (imgIndex == 0)
{
imgIndex = imgArray.length;
}
img.src = imgArray[--imgIndex];
}
if (key == random)
{
imgIndex = Math.floor((Math.random()*(imgArray.length-1))+1);
img.src = imgArray[imgIndex];
}
});
});
</script>
HTML:
然后在此处发送imgIndex
,以便图片的ID等于imgIndex
:
<a href="?action=viewcomic&id=imgIndex"><img id="prevkey" src="./images/SiteDesign/prev.png" alt="Comic Navigation" /></a>
但它不起作用。
有关如何将其传递给<a href="...">
的任何建议吗?
修改
我无法使用的原因是因为我需要操纵一个javascript变量,而不是一个数字(因为浏览器呈现php值)。
答案 0 :(得分:3)
处理完imgIndex
后,您可以操纵链接的目标。
document.getElementById("yourLinkId").href = "?action=viewcomic&id=" + window.imgIndex;
除此之外,你可以在链接中添加一个事件处理程序,我在这里作为jQuery的示例显示:
$("#yourLinkId").on("click", function()
{
$(this).attr("href", "?action=viewcomic&id=" + window.imgIndex);
});
答案 1 :(得分:2)
如果您将imgIndex
回显到<a>
标记,就可以这样做:
<a href="?action=viewcomic&id=<?php echo $imgid ?>"><img id="prevkey" src="./images/SiteDesign/prev.png" alt="Comic Navigation" /></a>
然后你可以从查询字符串中获取imgid:
<?php $imgid = $_GET["id"] ?>
答案 2 :(得分:1)
你不能在链接中使用php变量吗?如果可以的话,是最好的解决方案。
<a href="?action=viewcomic&id=<?php echo $imgid; ?>"><img id="prevkey" src="./images/SiteDesign/prev.png" alt="Comic Navigation"/></a>