JQuery переписать URL-цикл - PullRequest
       4

JQuery переписать URL-цикл

2 голосов
/ 28 сентября 2010

Все еще пытаюсь изучить основы jquery, поэтому в выходные я начал искать простое переписывание ссылок в greasemonkey. Скрипт работает, но не зацикливается. Он просто берет URL из первого .img и записывает его во все остальные .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 Ответ

1 голос
/ 28 сентября 2010

Похоже, это то, что вам нужно:

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

Это циклически просматривает каждое изображение и устанавливает родительское свойство <a> href на основе src текущее изображение, которое вы зацикливаете, используя this внутри этого цикла .each().В противном случае .attr() получает атрибут из первого элемента, которому он соответствует, а не из текущего элемента, над которым вы зацикливаетесь.

...