установить ширину div внутри внутреннего iframe, используя jquery * без * идентификатора в iframe - PullRequest
0 голосов
/ 06 марта 2012

У меня есть следующий код:

<iframe>
  <div id="inner_div">
    Here's some text!
  </div>
</iframe>

Я знаю, что если бы у меня был идентификатор в iframe, я мог бы выполнить шаги здесь , чтобы получить аксессор для "#inner_div", и я мог бы просто установить оттуда высоту / ширину.

Я также знаю, что могу использовать селектор тегов, как указано здесь , если у меня нет родительского идентификатора.

Но проблема со вторым методом заключается в том, что когда я вызываю

$('iframe')[0]

в моем коде он возвращает HTMLIFrameElement, который не является объектом jQuery (поэтому я не могу использовать .find или любую другую магию jQuery для него). Я также попытался обернуть это в текст и передать его объекту jQuery, чтобы повторно проанализировать его как элемент DOM, но это тоже не работает.

Так есть ли еще способ заставить jQuery работать внутри iFrame?

Ответы [ 2 ]

2 голосов
/ 06 марта 2012
$($('iframe')[0])

превратит ваш первый iframe в объект jQuery.

Более подходящим решением jQuery-ish будет

$('iframe').first()

Вы должны помнить, что (если ваш iFrame не загружает контент изв одном и том же домене) вы, скорее всего, столкнетесь с проблемами междоменной политики (что означает, что вы не сможете получить доступ к содержимому iFrame).

1 голос
/ 06 марта 2012
$($('iframe')[0]).contents().find('#inner_div').css("width", "some_value");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...