响应式HTML5应用程序

responsive HTML5 application

本文关键字:应用程序 HTML5 响应      更新时间:2023-09-26

我一直在搜索HTML5应用程序的一些细节,但发现很难,或者可能是我搜索的方式不对。基本上,我想了解使用HTML5和CSS3创建应用程序的新方法,这将提供本地应用程序的体验。以下是我的疑问。

  1. 如何逐页导航。在典型的web应用程序中,每个页面都会被请求到服务器,服务器会在浏览器中刷新新页面。在现代方法中,如何在没有页面刷新效果的情况下进行页面导航。

  2. 在典型的web应用程序中,动态web编程(如asp.net、JSP)用于在浏览器中生成HTML文件。现代的方法是什么?我们仍然需要使用相同的方式,或者可以使用纯静态HTML文件,并可以通过jquery进行修改。

  3. 如何进行客户端-服务器通信以避免页面刷新。我们可以使用jquery进行所有的通信吗。这对浏览器来说太有用了吗。

  4. HTML5文件的托管方式。在服务器中或每个客户端都必须在本地拥有HTML文件的副本。

任何解释这一点的资源都将是伟大的。

这个问题很一般,但我会尝试回答。

1.HTML5只是HTML的一个新版本,据w3.org报道,该版本仍在起草中。
HTML5仍然是HTML,HTML通过向服务器请求下一页的新副本来导航到其他页面,服务器会主动响应。然而,这将从浏览器中刷新现有页面,并引入新页面。(是的,当再次请求同一页面时,会显示浏览器中的缓存副本,或者向服务器发送新请求,并重新加载所有微小或巨大的内容)。这是重新加载零件。但是,您可以使用AJAX必须提供的异步服务,使用这些服务可以请求html页面的一部分。

Ajax 是一组相互关联的web开发技术在客户端上创建异步web应用程序。使用Ajax,web应用程序可以向服务器发送数据,也可以从服务器检索数据异步(在后台)而不干扰显示和现有页面的行为。



2.现在很少使用静态页面。但是,如果网站没有太多特定于用户的组件,或者网站只有静态数据,那么静态页面是有帮助的,因为可以避免加载javascript内容。但话说回来,所有现代网页都是动态的。

有很多方法可以将动态内容放到网络上,比如模型-视图-控制器方法和基于事件的方法。

为了给您一个想法,新外观是单页外观,其中网站中的所有内容都显示在一个页面中,并且有多个控制器为页面的各个部分提供信息,所有这些都组合到一个视图中
看看这里。

3.现在有很多新的js选项,node.js和angular.js是最新添加的。如果你想让你的网站完全支持javascript,Node.js是一个很好的选择,但目前还没有多少托管网站支持Node.js。然而,现在javascript似乎是未来的趋势

4.这个问题很大,因为你的观点完全缺乏研究。因为,托管和拥有副本是两件不同的事情,因为除了托管网站和您的客户端(即浏览器)之外,还有很多其他服务器放在离客户端相当近的地方,可以动态提供页面,这样文件就可以很快被带到浏览器中。

因此,从某种意义上说,许多点击量巨大的网站要服务的慢速后端服务器上的快速缓存服务器层快速请求。还有快速缓存的数据库服务器在速度较慢的巨型飞机上。

所以,我想强调的是,这是一个纯粹与性能相关的决定,你必须做出。因此,如果你想实现什么,无论是速度还是其他什么,都有很多选择可以探索。

说到CSS3部分,CSS3的动画部分仍有待全球接受。世界各地仍有用户的浏览器无法处理CSS3D转换(使用旧版本IE等的用户)。就这样。

也就是说,这些东西纯粹与性能有关,HTML5或CSS3在这里没有任何作用。

查看jQuery Mobile!

基本上,jqm和其他web移动框架使用Ajax来避免任何页面刷新,并附带漂亮的动画。

  1. 这更多的是你想如何从服务器将数据拉入你的网络应用程序的问题?是的,这将是一个ajax请求,是的,你必须将其插入到你的html页面中,但这并不意味着你的整个页面必须来自服务器。您基本上可以有三层设置,服务器、中间商和前端。您的中间部分将为您的"页面"提供html模板,并插入来自服务器的传入数据,您的前端将处理并实现一切。它可以是php/angular或jquery设置,也可以是php/hullbars/jquery或javascript设置,还有很多其他设置。您的页面导航在某种程度上取决于您的框架设置
  2. 还是有点像上面的。路由是目前最常见的与服务器通信的方式。YOu基本上是通过不同的路由向服务器请求数据,然后在您想要呈现给最终用户的任何模板引擎中处理传入的数据——也许是json。对于路由,php解决方案是最受欢迎的,比如slim或symfony
  3. Jquery完全不错,据说现在棱角分明的速度要快得多。Handlebars非常适合创建模板页面。Angular联合收割机、qjuery、车把和其他一些东西合在一起。Backbone.js又是一个不错的
  4. 这是一个奇怪的问题,或者告诉我你需要对整个概念进行更多的研究。但要从框架和MVC类型的模型的角度来思考

我知道您需要一个单页HTML 5应用程序,对于页面导航,您可以使用Jquery mobile。它通过ajax实现。如果您需要本机应用程序的经验。(在移动设备中,JQM可能有点慢)您需要在jquery mobile中进行一些性能改进,比如删除未使用的小部件、未使用的主题、使用巧妙的javascript来最小化页面回流等。

对于这样的应用程序,为了代码的可维护性,我们需要使用javascript框架,如主干js、敲除js等(您有各种各样的MVVM框架可供选择)。

对于客户端-服务器通信,您可以进行AJAX调用。