2016-01-18 175 views
-1

我有一個html頁面,其中包含一個在另一個頁面上實現的頁眉。在加載時,通過JavaScript代碼,帶有頁眉代碼的html頁面包含在我的主頁面上。包含在html頁面

例子:

main.html中:

<html> 
<head> 
</head> 
<script> 
    $(function(){ 
     $("#header").load("header.html"); 
     //$("#footer").load("footer.html"); 
    }); 
</script> 
<body> 
<div id='header'></div> 

... 

</body> 
</html> 

現在我還有一個html頁面 - header.html中 - 其中i定義導航欄。

<html> 
    <head> 
    <meta name="viewport" content="width=device-width, initial-scale=1"> 
    </head> 

<body> 
    <nav class="navbar barra_superior"> 
    ... 
    </nav> 

但是,使用此解決方案,header.html上的元標記也應用於main.html。我的問題是,如果我可以將meta標籤僅應用於header.html。

由於

+0

您是否包含了包含jQuery? – Luke

+0

你可能不想通過jQuery包含元標記,它可能會混淆一些搜索引擎和網絡爬蟲。 –

+0

@Joao Ferreria,我建議在身體外部進行操作可以很好地在服務器端JavaScript中執行,如nodeJS或任何服務器端腳本 –

回答

0

.load()可加載頁面片段:

的​​方法,不像$.get(),允許我們指定要插入的 遠程文檔的部分。這是通過url參數的特殊 語法實現的。如果字符串中包含一個或多個空格字符 ,則假定第一個 空間後面的字符串部分是用於確定要加載的內容 的jQuery選擇器。

因此,使用這樣的:

$("#header").load("header.html nav.navbar.barra_superior"); 

當這種方法執行,它將檢索header.html中的內容,但隨後的jQuery解析返回的文檔查找與導航欄的類的導航元素和barra_superior。這個元素及其內容被插入到具有標題ID的元素中,其餘的檢索文檔將被丟棄。因此,Header.html中的<meta>元素將不會被插入。如果你想從Header.html插入更多的導航條,你可以指定body元素。

相關問題