jQuery: изменить изображение iFrame

0

У меня есть iframe с страницы анотера в другом домене:

Например:

<iframe id="myframe" src="http://stackoverflow.com/">
</iframe>

и в jQuery у меня есть следующее:

$(document).ready(function(){
    $("#myframe").load(function(){
        var obj = $("#myframe").contents().find('#hlogo');

        div.append('<img src="http://www.my-domain.com/img/myimage.jpg" />');
    });

});

Но это не добавление изображения. Что я могу сделать?

В этой скрипте я пытаюсь изменить изображение на что-то еще -Same проблема, разные источники.

  • 0
    Я думаю, что это как-то связано с СОП .
  • 0
    попробуйте сначала это: frames ['nameOfMyIframe'] Если это не определено, то это должно быть СОП, как предложил Дэйв Чен!
Показать ещё 1 комментарий
Теги:
iframe

2 ответа

1

Если вы хотите изменить атрибут src для #hlogo, вам нужно сделать так:

var iframe = $('<iframe>', {
       id:  'pay-rent',
       }).appendTo('body');


       iframe.load(function(){
        var obj = $('#pageHeaderLogo',iframe.contents());
        console.log(obj);
        obj.attr('src', 'http://www.firstchoicehousing.com/images/logo.png');
    });

iframe.attr({
 src:"http://wemanageproperties.securecafe.com/residentservices/apartmentsforrent/userlogin.asp"
 });

http://jsfiddle.net/UYPTc/
Если iframe - это другой домен, вы не можете получить доступ к его содержимому из-за политики одинакового происхождения

Uncaught SecurityError: Не удалось прочитать свойство contentDocument из "HTMLIFrameElement": заблокировал кадр с источником " http://fiddle.jshell.net " от доступа к кадру с исходным кодом " http://wemanageproperties.reslisting.com ". Протоколы, домены и порты должны совпадать.

-2

вы можете использовать функцию jQuery.contents()

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

см. также Как получить доступ к содержимому iframe с помощью jQuery?

Ещё вопросы

Сообщество Overcoder
Наверх
Меню