Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/419.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 包含在html页面上_Javascript_Html - Fatal编程技术网

Javascript 包含在html页面上

Javascript 包含在html页面上,javascript,html,Javascript,Html,我有一个html页面,其中包含一个在另一个页面上实现的标题。加载时,通过javascript代码,带有标题代码的html页面包含在我的主页上 例如: Main.html: <html> <head> </head> <script> $(function(){ $("#header").load("header.html"); //$("#footer").load("footer.html"); }

我有一个html页面,其中包含一个在另一个页面上实现的标题。加载时,通过javascript代码,带有标题代码的html页面包含在我的主页上

例如:

Main.html:

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

...

</body>
</html>

$(函数(){
$(“#header”).load(“header.html”);
//$(“#footer”).load(“footer.html”);
});
...
现在我有了另一个html页面Header.html,在这里我定义了导航栏

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

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

...
但是,使用此解决方案,header.html上的meta标记也应用于main.html。我的问题是,我是否只能在header.html上应用meta标记

感谢

允许您加载页面片段:

$.get()
不同,方法
.load()
允许我们指定 要插入的远程文档。这是通过一种特殊的方法实现的
url
参数的语法。如果有一个或多个空格字符 包含在字符串中,字符串中第一个 空间被假定为确定内容的jQuery选择器 待加载

所以像这样使用它:

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

当这个方法执行时,它会检索header.html的内容,但是jQuery会解析返回的文档,以找到navbar和barra_superior类的nav元素。该元素及其内容被插入到ID为header的元素中,其余检索到的文档被丢弃。因此,Header.html中的
元素将不会被插入。如果您想从Header.html插入更多的导航栏,可以指定body元素。

是否包含jQuery?您可能不想通过jQuery包含meta标记,这可能会混淆一些搜索引擎和web爬虫。@Joao Ferreria,我建议在服务器端Javascript(如nodeJS或任何服务器端脚本)中进行体外操作