2013-06-03 3 views
0

Im работает с внешним iframe, который я хочу использовать, используя собственный CSS. Iframe загружается и создается самой javascript, загружаемой другим javascript. Поскольку это услуга, предоставляемая компанией, я не могу контролировать, что производит их javascript, или содержимое iframe.Не удается добавить таблицы стилей в iframe в Internet explorer

То, что я сделал до сих пор с помощью JQuery, чтобы загрузить все мои пользовательские файлы CSS в IFRAME с помощью окна-OnLoad, как это:

window.onload = function() { 
$('iframe').addClass('styledIframe'); 

    var $c = $('.styledIframe').contents(); 
    //clone all styles from this document into the iframe 
    $c.find('head').append($('style, link[rel=stylesheet]').clone()); 
} 

Функция Iframe изменяет идентификатор каждый раз его загружен, так что, почему я добавлен класс «styledIframe». К моей проблеме: это отлично работает во всех браузерах, кроме Internet Explorer, я пробовал его в IE9 и ниже, и он не работает ни в одном из них.

Что я могу сделать, чтобы это работало в IE?

+0

См. Http://stackoverflow.com/questions/524696/how-to-create-a-style-tag-with-javascript –

ответ

0

Вы не можете стилизовать элементы из iFrame, поскольку технически они не существуют на странице, но существуют на другом сервере. Однако вы можете использовать стиль iFrame на одном сервере - это проблема безопасности. Сторонние ночные кошмары Я знаю, но так оно и есть. Вы можете попросить их установить свой стиль на своем сервере или попросить их изменить стиль самого контента для вас.

Смежные вопросы