2016-11-24 88 views
1

當我注意到Firefox正在請求位於HTML5模板標記內的img的src屬性中定義的url時,我正在使用DevTools調試我的Web應用程序,而Chrome沒有。Firefox在激活之前請求HTML5模板內的內容

我在使用最後一個版本(50.0)。

這是一個錯誤?下面

例子:

<template id="object-img"> 
    <div class='object-container'> 
    <div> 
     <img src="cacaca.jpg" class="img-responsive" alt="imagem" /> 
    </div> 
    </div> 
</template> 
+0

那麼你必須向我們展示一些代碼,以便我們可以看到你是否做了任何錯誤......但除非你以某種方式明確地呈現模板,否則瀏覽器不應該自己渲染它,更不用說請求任何基於模板內容的外部資源。 – CBroe

+0

按照要求,我舉了一個例子(編輯我自己的問題)。模板不呈現 - 它通過javascript onclick事件呈現。 –

+0

另一個有用的信息:我的代碼有其他模板。視頻,音頻,對象...但只有IMG有這種行爲。 –

回答

0

這是一種從Firefox的優化。

僅當image尚未在瀏覽器的歷史記錄/緩存中時才被請求。後續重新加載頁面將不會再次觸發請求。

的問題是,<template>image在渲染DOM以下,但正常圖像,這可能是在某些情況下適得其反之前被請求。解決方法是將<template>放在其他圖像之後。

注意:template規範聲明模板中的元素不會呈現,但會被解析。他們對引用資源的預加載沒有提及。