Получить картинку из HTML
Всем привет.
есть HTML пример: <div class="new"> Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the <img src="test.jpeg" width="45"/> Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s <img src="image2.jpeg" width="300" height="300" /> Lorem Ipsum is simply dummy text of the printing and typesetting industry. <img src="image3.jpeg" width="50" height="50" /> </div> как можно с этой страницы получить только первую картинку? (ну и вообще как вытащить только изображение <img >) учитывая что картинка не имеет например id и класса. |
var image = document.querySelector('.new img');
|
Цитата:
а если это приходит через json и нужно вытащить оттуда
success: function(data) {
$.each(data, function(key, val) {
var intro = val.introtext;
в intro есть текст с картинками |
var tempDiv = document.createElement('div');
tempDiv.innerHTML = intro;
var image = tempDiv.querySelector('img');
|
Цитата:
intro.querySelector is not a function может как то search можно использовать? например вот так
var image = val.introtext.search("img");
находит элементы. но вывести пока не получается. |
Зосимов, опечатался, исправил, смотрите пост ещё раз.
|
Если текстом получить нужно, то можно так:
var image = intro.match(/<img.*?\/?>/i); image = image && image[0]; alert( image ); |
Наиболее правильный вариант:
var image = (new DOMParser).parseFromString(intro, 'text/html').querySelector('img');
:) |
Цитата:
а можно ей класс присвоить уже после выбора? |
var image = (new DOMParser).parseFromString(intro, 'text/html').querySelector('img');
image.classList.add('myClass');
myWrapper.appendChild(image);
Текстом:
var image = (new DOMParser).parseFromString(intro, 'text/html').querySelector('img');
image.classList.add('myClass');
alert( image.outerHTML );
|
| Часовой пояс GMT +3, время: 02:36. |