有几种方法,但这实际上取决于您使用什么以及您希望代码看起来多干净。我在每个 div 中放置了一个隐藏的输入,并使用 JQuery 检索它$("input", $(this).parent()).val();
您还可以使用 Jquery 的索引。http://api.jquery.com/index/
您可以将它放在一个类中并检索单击项目的类(与为每个图像设置一个 ID 相同的想法)
单击时,您可以在类属性中添加一个选择器,然后您可以使用 for-each 来计算在按图像顺序点击该类之前经过的图像数量。
您也可以执行 showLarge(this, index#) 并以这种方式设置索引。我不能让你的 JS 小提琴工作。
对每个图像行执行此操作:
<td><a href="#" onclick="javaScript:showLarge(this,1);" ><img class="imgBorder" id="image1" src="Media//Gallery//img_1.jpg" alt="Gallery Image 1" /></a>
</td>
这会将 onclick 放入锚标签并在名为 image1 的图像标签中添加一个 id(1 是您放入锚标签第二个参数的数字)
在 javascript 中,执行以下操作:
function showLarge(img, index) {
var largeFrame = document.getElementById("zoomedIn");
largeFrame.style.visibility = 'visible';
var largeImage = document.getElementById("largeImage");
src = document.getElementById("image"+index);
largeImage.src = src.src;
currentImage = index;
}
这会根据点击的索引通过 id 获取图像
对于 next+prev 按钮,请执行以下操作:
function changeImage(direction) {
index = parseInt(currentIndex) + parseInt(direction);
if (index < 1) {
index = 1; // or use imgArray.length to rotate round
}
if (index > imgArray.length) {
index = imgArray.length; // or use 0 to rotate round
}
src = document.getElementById("image"+index);
document.getElementById('largeImage').src = src.src;
currentIndex = index;
}