Каков наиболее эффективный способ создания ссылки на этот элемент HTML с использованием простого JavaScript? - PullRequest
1 голос
/ 11 ноября 2009

Если у меня есть следующий HTML:

<div id="container">
  <iframe></iframe>
</div>

Каков наиболее эффективный способ (в основном с точки зрения производительности) для создания ссылки на элемент

var element = document.getElementById('container').getElementsByTagName('iframe')[0];

IIRC, однако, getElementsByTagName может работать медленно. Разве это не проблема, поскольку в

есть только один элемент?

Есть ли более краткий и / или более эффективный способ получить

Ответы [ 3 ]

5 голосов
/ 11 ноября 2009

Поместите идентификатор в iframe и укажите его с помощью gEBI. Если вы не замечаете задержку с gEBTN, тогда я предлагаю оставить код таким же, как есть, и да, предоставив контекст для gEBTN, поможет.

4 голосов
/ 11 ноября 2009

В этом случае вы не заметите производительность. Однако, если вы сделаете document.getElementsByTagName, вы, вероятно, заметите это, поскольку оно должно пройти по всему дереву DOM.

Помните, что это не всегда связано с производительностью, во многих случаях лучше иметь четкий читаемый код, чем perl-one-liner , который будет выглядеть для всех, включая вас, как бред они возвращаются через 2 недели.

Если вы можете добавить атрибут id к элементу iframe, это, конечно, будет лучшим решением, как говорит Медер.

0 голосов
/ 11 ноября 2009

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...