如何使用javascript(jQuery& iviewer)通过逐步向img src添加1来更改图像?

时间:2012-02-02 14:22:13

标签: javascript jquery image

检查了关于SO的各种问题,但没有发现任何与我追求的完全匹配......

我正在使用jQuery和iViewer的组合构建一个图像viwer。以下是用于在iviewer中调用不同图像的代码:

$("#chimg").click(function()
{
   iv1.iviewer('loadImage', "img/01.jpg");
   return false;
});

可以看出,我已按顺序命名图像。现在,使用单个链接调用所有图像,每个图像一个,但理想情况下我也希望能够添加上一个和下一个图像按钮。

由于图像是按顺序命名的,我想知道是否有一种通过在当前图像中添加“1”值来调用序列中的下一个图像的方法?显然,如果有必要,我很乐意更改文件的命名约定。

(免责声明:我是一个快速学习者,但我也是javascript的新手。经过讨论的解决方案真的更受欢迎......)

2 个答案:

答案 0 :(得分:3)

这应该可以解决问题......

var i = 0;

$("#chimg").click(function()
{
    i++;
    iv1.iviewer('loadImage', "img/" + ("0" + i).slice(-2) + ".jpg");
    return false;
});

此...

("0" + i).slice(-2)

...将0添加到i中存储的任何值的开头,然后取最后2个字符,这样你就得到了0个填充数字。

答案 1 :(得分:0)

我以前从未使用过iViewer,但是我的头顶上的第一个选项是你能获得img的'src'属性吗?如果你有源,你可以通过正则表达式获得数字

var src = $('#chimg').attr('src');
var m = parseInt(src.match(/\d+/g));
n = m+1;
src = src.replace(m, n);
iv1.iviewer('loadImage', src);

然后你需要做的其他事情。

see it work