Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.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的web应用程序的文件结构_Javascript_Jquery_File - Fatal编程技术网

基于javascript的web应用程序的文件结构

基于javascript的web应用程序的文件结构,javascript,jquery,file,Javascript,Jquery,File,我计划编写一个基于javascript的web应用程序。我想知道在文件结构方面实现它的最佳方法是什么 有一个主页(main.html),包含一个菜单和一个主div部分。其工作方式很简单:当用户单击菜单中的一个链接(例如“第1页”)时,div部分的内容将用page1.html文件的内容刷新。这是使用javascript(jquery)完成的。如果用户单击“第2页”,page2.html文件的内容将加载到div部分,以此类推 每个页面都有自己的javascript代码,我更喜欢将其分开,因此我实现了

我计划编写一个基于javascript的web应用程序。我想知道在文件结构方面实现它的最佳方法是什么

有一个主页(main.html),包含一个菜单和一个主div部分。其工作方式很简单:当用户单击菜单中的一个链接(例如“第1页”)时,div部分的内容将用page1.html文件的内容刷新。这是使用javascript(jquery)完成的。如果用户单击“第2页”,page2.html文件的内容将加载到div部分,以此类推

每个页面都有自己的javascript代码,我更喜欢将其分开,因此我实现了一种类似asp.net中的“代码隐藏”:

页面1.html:



页面2.html:

当用户单击“第1页”时,page1.html文件的内容将加载到main.html的main div部分。由于page1.html引用了page1.js,因此也会加载page1.js中的javascript代码

这似乎很好,但我想知道这是否是实现这一点的最佳方式。在某个时候,我考虑引用main.html中的所有javascript文件,这也可以正常工作,但这意味着所有javascript文件都必须加载到内存中,即使它们不会被使用。在第一种方法中,javascript文件在实际使用之前只加载到内存中


有什么想法吗?这方面的“最佳实践”是什么?请记住,这是一个web应用程序(与网站相反)。它将在互联网上提供,但只有一些用户可以使用(而且它会有密码保护),所以我不关心搜索引擎优化等。

这可能对你没有影响,但你知道,从搜索引擎优化的角度来看,这是一个可怕的想法。您的站点将是flash站点的Javascript版本。就搜索引擎而言,将只有一个页面


这就是为什么基于框架的网站已经流行了好几年,但几乎消失了。

这可能对你没有影响,但你知道,从SEO的角度来看,这是一个可怕的想法。您的站点将是flash站点的Javascript版本。就搜索引擎而言,将只有一个页面


这就是为什么基于框架的网站已经流行了好几年,但几乎消失了。

加载JavaScript文件是同步的,这会对页面加载时间/感知响应性产生负面影响

出于这个原因,我认为最好将所有脚本合并到一个文件中,用YUI压缩程序压缩它并发送Gzip。通过这种方式,您将获得最好的压缩和最少的HTTP开销,并且缓存的JS不会暂停加载其他页面


对于特定于页面的动态脚本,JavaScript文件的加载是同步的,这会对页面加载时间/感知响应性产生负面影响

出于这个原因,我认为最好将所有脚本合并到一个文件中,用YUI压缩程序压缩它并发送Gzip。通过这种方式,您将获得最好的压缩和最少的HTTP开销,并且缓存的JS不会暂停加载其他页面

对于特定页面,动态脚本使用内嵌

@porenel

有很多方法可以让JS异步加载(专门创建脚本标记),但这些方法可能被认为是不安全的

@OP

我同意其他人的观点,从搜索引擎优化和可访问性的角度来看,这听起来是个坏主意,从实践的角度来看,这是一个性能问题(代码中有引导的方法,但我认为这是为了获得最小的收益而付出的大量努力),从应用程序开发的角度来看,这是一个值得怀疑的效果。作为一个假设性的练习,我认为porneL的gzip解决方案是最好的

基本上,我认为你很难找到一些很少人会实践的最佳实践。

@porneL

有很多方法可以让JS异步加载(专门创建脚本标记),但这些方法可能被认为是不安全的

@OP

我同意其他人的观点,从搜索引擎优化和可访问性的角度来看,这听起来是个坏主意,从实践的角度来看,这是一个性能问题(代码中有引导的方法,但我认为这是为了获得最小的收益而付出的大量努力),从应用程序开发的角度来看,这是一个值得怀疑的效果。作为一个假设性的练习,我认为porneL的gzip解决方案是最好的

基本上,我认为你很难找到一些很少人会实践的最佳实践