O uso de iframes pode ligar para páginas facilmente de outros sites, mas deve ser usado com cautela. São necessárias dezenas ou até centenas de vezes mais desempenho do que criar outros elementos DOM, incluindo estilo e script. Adicionar 100 elementos diferentes A comparação de tempo mostra como o desempenho é que consome o IFRAME:
As páginas que usam iframes geralmente não têm tantos iframes; portanto, não se preocupe muito com a criação de DOMs. O que é mais digno de preocupação são os eventos de Onload e os pools de conexões.
IFRAME Blocks ONLOADÉ muito importante que o evento ONLOAD da janela seja executado o mais rápido possível. Isso permitirá que o indicador de progresso de carregamento do navegador seja concluído e o usuário determinará se a página foi carregada com base nisso. O atraso no evento OnLoad fará com que o usuário sinta que a página é mais lenta.
O evento OnLoad de Window não disparará até que todos os iframes contenham e os recursos em todos os iframes estejam totalmente carregados. No Safari e Chrome, atribuindo dinamicamente valores a iframes com JavaScriptpt pode evitar esse comportamento de bloqueio.
Um pool de conexãoPara cada servidor da Web, o navegador abre apenas algumas conexões. Os navegadores antigos, incluindo o IE 6/7 e o Firefox 2, têm apenas 2 conexões por host. No novo navegador, o número de conexões aumenta. Safari 3+ e Opera 9+ aumentaram para 4, Chrome 1+, IE 8 e Firefox 3 aumentaram para 6.
Pode -se esperar um pool de conexão separado para cada iframe, mas esse não é o caso. Na maioria dos navegadores, as conexões são compartilhadas pela página principal e seu IFRAME, o que significa que é possível que os recursos no iframe adotem as conexões disponíveis e bloqueie o carregamento de recursos da página principal. Isso é ótimo se o conteúdo no iframe for igualmente importante ou mais importante que a página principal. No entanto, em geral, o conteúdo em um iframe não é muito importante para a página e não é aconselhável que o iframe ocupe o número de conexões. Uma solução é atribuir dinamicamente o SRC do iframe após a conclusão do download do recurso com maior prioridade.
Cinco dos 10 principais sites dos Estados Unidos usam o IFRAME. A maioria deles é usada para carregar anúncios. Isso não é muito adequado, mas compreensivelmente, é uma maneira fácil de inserir anúncios no conteúdo. Em muitos casos, o uso de um iframe é razoável. Mas esteja ciente do impacto do desempenho que isso tem na sua página. Por favor, use -o com cautela, a menos que seja necessário.