Требования, кажется, изменился:
Как я могу добавить каждое изображение не родителей, но к существующим пролетам на странице с # m1 этих идентификаторов, # м2, # MY3 (где # MY3 является id span, где необходимо разместить третье изображение).
Дано:
<table>
<tr>
<td id="anchToImg">
<a href="/mydir/folder/anyImg-1.jpg">my anchor1</a>
<a href="/mydir/folder/anyImg-2.jpg">my anchor2</a>
<a href="/no/something.jpg">my anchor1</a>
</td>
</tr>
</table>
<span id="m1"></span>
<span id="m2"></span>
Вы можете использовать:
$('#anchToImg a[href^="/mydir/folder/"]').each(function() {
var href = $(this).attr('href'); // Relative
var num = href.substring(21, href.indexOf('.')); // Find number
var $target = $('#m' + num);
var $img = $('<img />', {src: href, 'class': 'myiImg'});
$img.appendTo($target);
//$(this).remove(); -- if the link should be removed
});
Для того, чтобы получить:
<table>
<tbody><tr>
<td id="anchToImg">
<a href="/mydir/folder/anyImg-1.jpg">my anchor1</a>
<a href="/mydir/folder/anyImg-2.jpg">my anchor2</a>
<a href="/no/something.jpg">my anchor1</a>
</td>
</tr>
</tbody></table>
<span id="m1"><img src="/mydir/folder/anyImg-1.jpg" class="myiImg"></span>
<span id="m2"><img src="/mydir/folder/anyImg-2.jpg" class="myiImg"></span>
(Demo)
Однако, он никогда не проверяется, что существует #mN
до добавления <img>
!
Ну, это работало для меня. Как добавить класс к изображениям с вашей версией? –
@dessol replace '.attr ('src', url);' с '.attr ({src: url, 'class': 'myiImg'});' – jensgram
или $ this.attr ('class') для захвата класс по ссылке – tbleckert