Próbuję stworzyć skrypt, który by wstawił img
element po każdym linku do określonej witryny ze źródłem równym wartości href
atrybut danego linku. Oto co wymyśliłem:
$("a[href*=site.com/img/]").after("<img src="/images/+$(this).attr("href")+">");
Rzecz w tym, $(this)
nie działa (zwraca attr () undefined
). Dlaczego tak jest Jak odnieść się do wybranego linku i jego argumentu href
?
Odpowiedzi:
8 dla odpowiedzi № 1Rozwiń go ręcznie za pomocą każdego (), np .:
$("a[href*=site.com/img/]").each (function () {
$(this).after("<img src="/images/+$(this).attr("href")+">");
});
Musisz mieć odpowiedni zakres, aby $ (this) zachowywał się tak, jak tego oczekujesz, jQuery potrzebuje jakiegoś kontekstu, aby to ustawić.