Не удалось получить доступ к содержимому iframes через ".content ()" - PullRequest
1 голос
/ 24 октября 2011

http://api.jquery.com/contents/

Возможно, вы можете получить доступ к DOM iframes с помощью метода contents ().Я вырезал и вставил код, изменил идентификатор для iframe на своей странице и собираюсь сделать очень простой div, единственный в iframe.Это не находит это.Мне успешно удалось манипулировать css самого iframe, так что я почти уверен, что все правильно.Это также все в условных документах, готовых.

Обсуждаемая страница находится здесь http://syndex.me/tagged/belgium

Надеюсь, кто-то может пролить свет на работу этих методов.*

$("#tumblr_controls").css({
   position : 'fixed',
   top : 'auto',
   bottom : '15px',
}); //works
$("#tumblr_controls").contents().find("div").css("right","auto"); //doesnt work
$("#tumblr_controls").contents().find("div").css("left","0"); //doesnt work

Обратите внимание, что вы должны войти в Tumblr, чтобы увидеть элементы управления, о которых я думаю.

<iframe src="http://assets.tumblr.com/iframe.html?10&amp;src=http%3A%2F%2Fsyndex.me%2F&amp;lang=en_US&amp;name=syndex&amp;brag=0" scrolling="no" width="330" height="25" frameborder="0" style="right: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; background-color: transparent; overflow-x: hidden; overflow-y: hidden; position: fixed; top: auto; bottom: 15px; z-index: 1000007; " id="tumblr_controls">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
        <meta http-equiv="x-dns-prefetch-control" content="off">
        <link rel="icon" href="http://assets.tumblr.com/images/favicon.gif?2" type="image/gif">
 </head>
    <body style="background-color:transparent; margin:0px; padding:0px;" onload="var image1 = new Image(); image1.src = 'http://assets.tumblr.com/images/iframe_like_alpha.png';
    var image2 = new Image(); image2.src = 'http://assets.tumblr.com/images/iframe_like_active_alpha.png';">

    <style>
        img {
            margin-left: 3px;
        }
    </style>

    <div style="position:absolute; top:3px; right:3px; white-space:nowrap; height:20px;">

<form action="/follow" method="post" style="display:block; float:left;" onsubmit="_gaq.push(['_trackEvent', 'Iframe', 'Follow', 'syndex');">
                            <input type="hidden" name="form_key" value="4d9WHkMln7qxbqRkkU1FJ51jYk">
                            <input type="hidden" name="id" value="syndex">
                            <input type="image" src="http://assets.tumblr.com/images/iframe_follow_alpha.png?663" style="width:58px; height:20px; border-width:0px; display:block;
                            margin-left:3px; cursor:pointer;" alt="Follow">
                        </form>

            <a target="_top" href="http://www.tumblr.com/dashboard"><img src="http://assets.tumblr.com/images/iframe_dashboard_alpha.png?663" alt="Dashboard" style="height:20px;
            width:81px; border-width:0px; display:block; float:left; cursor:pointer;"></a>

                        </div>

</body></html>

</iframe>

1 Ответ

3 голосов
/ 24 октября 2011

У вас нет прав доступа к содержимому фрейма tumblr_controls, поскольку он поступает из другого домена.

Дополнительная информация:

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