Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/77.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
跨所有页面加载jquery一次_Jquery_Html - Fatal编程技术网

跨所有页面加载jquery一次

跨所有页面加载jquery一次,jquery,html,Jquery,Html,有没有一种方法允许我在多个页面上只加载一次jQuery?我正在一个div中加载外部页面 $("#home").click(function(e) { e.preventDefault();$("#content").html(ajax_load).l‌​oad("page.html"); }); 我正在加载的页面需要Jquery。在这些外部页面中,我可以调用已经加载的版本,还是必须反复调用jQuery,而不是调用jQuery,例如:() 我这样问是因为我没有在每个外部页面上重复jque

有没有一种方法允许我在多个页面上只加载一次jQuery?我正在一个div中加载外部页面

$("#home").click(function(e) {
   e.preventDefault();$("#content").html(ajax_load).l‌​oad("page.html"); 
});
我正在加载的页面需要Jquery。在这些外部页面中,我可以调用已经加载的版本,还是必须反复调用jQuery,而不是调用jQuery,例如:(


我这样问是因为我没有在每个外部页面上重复jquery库的不断加载,这不会降低外部页面的加载速度吗?

如果您通过ajax将外部页面加载到带有jquery的页面中,那么您只需要在包含jquery的页面上加载jquery。所以我想答案是肯定的,您可以引用已经加载的jquery版本

只需确保在任何事件侦听器(例如
.on()
)中包含selector参数即可委派事件,因为您添加的内容是动态添加的,而不是直接绑定的


如果将jquery加载到正在加载的外部页面中,那么主页将加载两个不同的jquery库,这不是您想要的,因为它可能会导致所有类型的问题。

这将在
\content
中加载整个页面。如果不需要其他脚本,例如others.js文件,则可以从外部页面将body标记中的所有内容包装到div中,并执行以下操作:

$("#content").html(ajax_load).load("page.html#wrapper");
这将只加载包装器中的内容

我不记得为什么了,但我知道不能只使用body标记作为选择器

注意:div不必被称为包装器


希望这有帮助

“我正在加载一个div中的外部页面。”您使用什么代码来执行此操作?您可以尝试浏览器缓存这可能会对您有所帮助,如果您确实从google CDN加载,那么您已经被缓存,因此不会重新下载jquery。@gustavohenke在这种情况下,我是否仍应将其加载到html中?jquery必须在您的页面中只包含一次。因此,请确保包含AJAX的HTML不包含它,否则会出现问题。