2016-05-29 17 views
0

Есть ли способ изменить стиль элемента img внутри iframe с помощью jquery. Iframe epubjs-iframe меняет идентификатор на каждую загрузку страницы. Я хочу изменить стиль = heigh="98%" на max-height:467 и width:auto на каждую загрузку страницы.Изменение стиля элемента на изображении внутри iframe

Html-code

+1

Пожалуйста, внесите ваш код здесь. – BenM

+0

Я этого не делаю. –

+0

Я использую epubjs из будущего. И когда я загружаю титульную страницу, изображение обложки разбивается и не реагирует. Поэтому, используя элемент проверки в chrome, я меняю значения Image на максимальную высоту: 467 и ширину: авто. Поскольку я не могу достичь iframe из моего внутреннего css, мне было интересно, можно ли использовать jquery для каждой загрузки и изменить element.style на значения, которые работают. – rallesport

ответ

0

Да, если src вашего фрейма указывает на одном домене.

Например.

var iframe = $("#iframe"); // Selector to get the iframe 
$("#elemInIframe", iframe.contents()).css("color", "blue"); //Or whatever method you want 

И, конечно, если src из фрейма в другой области, из-за соображений безопасности, Вы не сможете получить доступ к содержимому в JavaScript. Простите же!

0

Не знаю, если это в данном случае, но при работе с фреймами Вам может понадобиться преодолеть Same Origin Policy: https://developer.mozilla.org/en-US/docs/Web/Security/Same-origin_policy

Вы можете использовать PostMessage для кросса-кадр связи. Для этого:

  • Вы должны быть в контроле кода и страницы хоста и заливали один
  • Или использовать PostMessage API предоставлена ​​компанией Вы хотите вставлять

Подробнее о PostMessage: https://developer.mozilla.org/en-US/docs/Web/API/Window/postMessage

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