2013-03-05 74 views
3

我有一个网站,其中包含某种需要30行脚本的插件。 这样的插件存在于整个网站页面(到目前为止,只有两个),因为它是标题的一部分,也是相同的。在网站上全局加载脚本

我想知道是否有一种方法可以避免每次从页面切换到下一个页面时执行30行的脚本,因为标题是相同的,因此可以缩短加载时间。 (如果你说30行代码对浏览器来说不算什么,那么我的问题将得到解答)

+0

取决于30行!运行它可能是无关紧要的或者非常昂贵的(例如,在一个大集合上迭代可能代码量不大,但可能占用大量CPU时间)。 – BLSully 2013-03-05 14:36:01

回答

4

不用担心,脚本将被浏览器缓存,不会再次下载。大约30行代码很多或不是:取决于这些行是干什么的!只需几行代码甚至一行代码就可以编写极其昂贵的代码。

+4

这个。但是我也可以为OP的好处添加,即使_source_被缓存,它会执行每一页加载(因为执行上下文不会在页面之间持续存在,即使在同一个网站上)。如果您想保持JavaScript的状态,请考虑通过ajax加载页面并使用History API – BLSully 2013-03-05 14:38:39

+0

谢谢BLSully。其实,我与AJAX加载一个网站,但我不得不说,你不能链接到内容的网站example.com的问题,因为你总是处于example.com/# bfavaretto说剧本被缓存,并30行代码可能不多,所以现在我不担心。 非常感谢你们! – Nico 2013-03-05 22:57:52

+1

@Nico为了澄清,当我说它被缓存时,我的意思是它不必再次下载,但是它必须在每次页面加载时执行(从缓存中)。如果整个网站都是由Ajax驱动的,那么情况就不是这样,但是它也带有它自己的问题,正如你可能已经注意到的那样。 – bfavaretto 2013-03-06 01:36:28