Получить метатеги и содержимое тегов img из источника iframe, используя jQuery/Javascript

У меня есть HTML-файл со следующим содержанием

<html>
<head>
<meta charset="utf-8">
<title>builder 1.0</title>
<body>
<iframe width="100%" height="100%" src="a.html" name="cxsideframe" scrolling:'no';="" id="frame1" style="overflow:hidden;">
</iframe>
</body></html>

Содержание a.html

<html>
<head>
<meta charset="utf-8">
<title>builder v1.0</title>

<meta content="width=device-width, initial-scale=1.0, user-scalable=0, minimum-scale=1.0, maximum-scale=1.0" name="viewport">

<meta content="desc goes here" name="description">
<meta content="auth name" name="author">
<body>
<img src="http://example.com/images/01._V397411194_.png" style="display:none" alt=""/>
<img src="http://example.com/images/V386942464_.gif" style="display:none" alt="" />
</body></html>

Мне нужно извлечь содержимое мета-тегов и списков изображений a.html с родительской страницы, используя jQuery или javascript.

Я старался

alert($('#frame1').contents().find($('#meta[name=description]').attr("content")).html());


and 
$('meta[name=author]').attr("content");      

Но не получил решение. Есть идеи, как это сделать?

2 ответа

Чтобы получить значение атрибута content использование

alert($('#frame1').contents().find('meta[name=description]').attr("content"));

и получить все изображения в виде массива

$('#frame1').contents().find('img')

РЕДАКТИРОВАТЬ: убедитесь, что вы вызываете эти методы после загрузки содержимого iframe. Так что используйте

$("#frame1").ready(function(){
alert($('#frame1').contents().find('meta[name=description]').attr("content"));
alert($('#frame1').contents().find('img'));
})

Например, поместите кнопку и на кнопку получите содержимое iframe

function getContentFromIframe(){
    var myIFrame=document.getElementById('iframe');
    var content=myIFrame.contentWindow.document.body.innerHTML;
}
Другие вопросы по тегам