Jquery重写url循环

时间:2010-09-28 12:36:02

标签: jquery greasemonkey

仍在尝试学习jquery的基础,所以在周末我开始寻找在greasemonkey中简单重写链接。脚本正在运行,但它没有循环。 它只是从第一个.img获取url并将其写入所有其他.img而不是获取每个链接并将其写入相同的元素。不确定它是否有任何意义,但看看脚本,我相信你明白。 :)

   function rewrite() {
   $.each($(".img"),function(){
   var a=$("a img[src*='/SAN/']").attr('src');
   $("a img[src*='/SAN/']").parent().attr('href','http://somesite.com/'+a);
});
}

1 个答案:

答案 0 :(得分:1)

看起来这就是你所追求的:

function rewrite() {
  $("a img[src*='/SAN/']").each(function() {
    $(this).parent().attr("href", 'http://somesite.com/'+this.src);
  });
}

这将遍历每个图片,并根据您正在循环的当前图像的<a>设置父href src属性,使用{在.each()循环内{1}}是关键。否则.attr()会从匹配的第一个元素中获取属性,而不是您正在循环的当前元素。