1

我在一个文件夹中有一堆图像,它们都以数字命名。第一个显示在文档加载时。

<img src="image/01.jpg" />

我想使用 jQuery 来浏览图像。换句话说,我想将 HTML 转换为字符串,然后增加当前“01”的值。

到目前为止,我有:

$(document).ready(function(){
  $("button").click(function(){
    var $n = $("img").html(htmlString(17));
    $n.val(Number($n.val())+1);
  }); 
});

我确定我完全错误的一点是数字的选择(即 delcaring var $n。我试图将 HTML 转换为那里的字符串并沿字符计数,但我什至不确定这是否是正确的路线;我在任何地方都找不到类似的东西。

谢谢。

4

3 回答 3

2

img元素没有 html 内容,除了你使用html的是 setter 而不是 getter。您可以使用以下方法替换src属性的值replace

$('img').prop('src', function(_, src) {
    return src.replace(/\d+/, function(n) {
        var num = +n + 1;
        return num.toString().length === 1 ? '0' + num.toString() : num;
    });
});

http://jsfiddle.net/Bb84Q/

于 2013-05-17T16:45:02.653 回答
0

你可以

1)在js变量中捕获src值

2)使用 substr 函数摆脱“image/”部分。

3) 然后在 "." 上使用 split() 取第一个数组槽的值。

4)使用 intVal() 将其转换为整数和

5)然后增加值

于 2013-05-17T16:42:41.267 回答
0
var source = "image/01.jpg";
var number = source.split(".")[0].split("/")[1];
number = (number *1) + 1
var newsource = "image/" + number + ".jpg";

这就是你实际获得来源的方式

var source = $("img").attr('src');

刚刚意识到这将使 "image/2.jpg" ,您可以使用data-number属性,您可以重命名 1 - 9 的图像,但这给了您一个想法

于 2013-05-17T16:37:25.650 回答