Подтвердить что ты не робот

Разница между свойствами contentDocument и contentWindow javascript iframe/frame access

  • В чем разница между этими двумя свойствами (contentDocument и contentWindow)?
  • Есть ли разница в том, как они соответствуют содержимому в кадр /IFrame?
  • Есть ли проблемы с производительностью?
  • Должен ли я использовать contentXXXXX.document.getElementsBy... или contentXXXXX.getElementsBy...?

Я искал в Интернете, но не нашел слишком много информации, и, прежде чем я сделал большое исследование, я подумал, что могу попросить отличное сообщество здесь, в stackoverflow. В качестве комментария я делаю script, который учитывает входные данные на веб-странице, обращаясь ко всем уровням фреймов или iframes и добавляя эти входы, найденные внутри фреймов/фреймов, к глобальному счету. Предполагается, что весь контент должен быть из одного домена, поэтому, я считаю, проблем с политикой одного и того же происхождения не должно быть. Для script я использую чистый JavaScript без jQuery или любых фреймворков/библиотек, которые облегчают жизнь u_u jaja. Это практика script, и если кто-то захочет взглянуть на код, который я опубликую, это не проблема. Спасибо всем, кто нашел время, чтобы объяснить это.

4b9b3361

Ответ 1

Я думаю, что <iframe> документация MDN хорошо объясняет:

Из элемента DOM iframe скрипты могут получить доступ к объекту window включенной HTML-страницы через свойство contentWindow. Свойство contentDocument относится к элементу document внутри iframe (это эквивалентно contentWindow.document), но не поддерживается версиями Internet Explorer до IE8.

Таким образом, вы использовали бы contentWindow так же, как используете window и contentDocument, используя document.