как получить innerHtml тела без iframe с помощью jquery - PullRequest
4 голосов
/ 18 января 2011

У меня есть страница с HTML примерно так

<body><iframe ></iframe><div id="menu">......</div>.....</body>

Я хочу получить innerHTML тела, но без iframe? Как я могу сделать это в JQuery?

Ответы [ 3 ]

4 голосов
/ 18 января 2011

Попробуйте с .clone:

$(document.body)
    .clone()
    .find('iframe')
        .remove()
    .end()
    .html();
0 голосов
/ 19 января 2011

Я нашел другой способ сделать это

var page = $('body').html();
page = $('<div>' + page + '</div>');
var html = $(page).find('iframe').remove().end().html();

html переменная содержит HTML без iframe.

И это работает с IE, так как jquery.clone () не работал на моей странице, возможно, из-за искаженного HTML, как подсказал @lonesomeday

0 голосов
/ 18 января 2011
$(document).ready(function(){
    $('body').not('iframe').html();
});

это должно получить все в теле, кроме iframe.Вы, вероятно, захотите сохранить это в переменной или что-то для справки позже

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...