<script type="text/template">
<script type="text/template">
給<script>設置type="text/template",標簽裏面的內容不會被執行,也不會顯示在頁面上,但是可以在另一個script裏面通過獲取,然後再通過相關的模板工具進行處理,插入到頁面中。這樣就把大段的HTML操作從js裏面分離開了
<div></div>
<script type="text/template" id="javascript_template">
<div onclick="_dom()">
<ul id="wrap">
<li>1</li>
<li>2</li>
<li>3</li>
<li>4</li>
</ul>
</div>
</script>
1.首先這種寫,在頁面渲染的時候,瀏覽器不會讀取script標簽中的html代碼
2.外面不能獲取到裏面的div節點
所以:
在使用時,要在script標簽上加個ID可以供我們找到它,
即然做模版用,且裏面的html代碼不會被渲染讀取,則需在外面再新建一個div來當容器,裝下這些html代碼,
即我們可以通過
var _html=document.getElementById(‘javascript_template‘).innerHTML;
document.getElementsByTagName(‘div‘)[0].innerHTML=_html;
然後我們模版裏的htmll代碼就可以運行在頁面中了;
如果遇到html代碼加入外部div後,獲取不到節點的情況,可以在外部寫個函數,然後在html內部用行內調用 onclick="_dom()"
function _dom() {
document.getElementById(‘wrap‘)
}
<script type="text/template">