Вывести объект jQuery как HTML
Есть ли хороший способ распечатать объект jQuery как чистый HTML?
Пример:
<img src="example.jpg">
<script>
var img = $('img').eq(0);
console.log(img.toString());
</script>
toString()
не работает. Мне нужна эквивалентная строка HTML, т.е.
<img src="example.jpg">
Ответы
Ответ 1
Если вам нужно напечатать объект в формате HTML, используйте это расширение outerHTML или outerHTML.
Обновление
Обновить ссылку и включить код для второй ссылки:
$.fn.outerHTML = function(){
// IE, Chrome & Safari will comply with the non-standard outerHTML, all others (FF) will have a fall-back for cloning
return (!this.length) ? this : (this[0].outerHTML || (
function(el){
var div = document.createElement('div');
div.appendChild(el.cloneNode(true));
var contents = div.innerHTML;
div = null;
return contents;
})(this[0]));
}
Ответ 2
$('img')[0].outerHTML
предоставит вам HTML-код первого img на странице. Затем вам понадобится использовать цикл for, чтобы получить HTML-образ всех изображений, или поместить идентификатор на изображение и указать его только в селекторе jQuery.
Ответ 3
Вы можете обернуть его, а затем использовать html:
var img = $('img').eq(0);
console.log(img.wrap("<span></span>").parent().html());