Создайте IFrame программно и верните его location.search - PullRequest
4 голосов
/ 26 марта 2011

Мне нужна функция, которая берет URL и добавляет iframe по этому URL в тело родительского документа iframe. Затем функция должна вернуть window.location.search этого iframe, не зная аргумента URL, что функция была задана.

Как я могу сделать это в JavaScript?

РЕДАКТИРОВАТЬ: Если первое предложение не имеет смысла для вас, попробуйте следующее: мне нужна функция, которая добавляет iframe к телу документа, учитывая URL в качестве аргумента. Другими словами:

function appendIFrame(url) {
    // create iframe whose address is `url`
    // append iframe to body of document
    // return location.search of iframe's `window`, without using `url` argument
}

1 Ответ

6 голосов
/ 26 марта 2011

Я попробовал это:

function foo(url) {
    var iframe = document.createElement("iframe");
    iframe.src = url;
    iframe.name = "frame"
    document.body.appendChild(iframe);
    return frames["frame"].location.host;
}
foo("http://google.com");

, но Chrome сказал, что вы не можете получить доступ к кадру с другим доменом. (Домены, протоколы и порты должны совпадать.)

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