HTML5资讯

当前位置: HTML5技术网 > HTML5资讯 > HTML5 之路的绊脚石

HTML5 之路的绊脚石

        任何新技术面临的关键问题之一是,要么被采用并且舍弃那些不能接受它的用户;要么错失新的发展机会,最终变成无关紧要的技术。比如,如果你要在网站开发中使用HTML5技术,这就意味着要舍弃那些仍然使用旧版IE的用户。不过开发者也可以通过兼容工作,让用户也能体验到HTML5的价值,同时也可以利用这个机会,让HTML5技术突显出它的重要作用。

       然而,并非所有的事情都能如人所愿。HTML5目前还处于发展的初级阶段,部分特性还不能完美的实现。下面列举出了HTML5的一些不足之处。



1.  IE浏览器

        IE浏览器是Web新技术发展道路上的绊脚石。IE6的辉煌时代已经结束,IE7也是这样,即便是IE8,也仍然不能称为一款“现代浏览器”。而IE9对HTML5的支持尚不完全,比如不支持Web Sockets和Web Workers。

       由于IE8不支持ECMAScript5,因此开发者必须考虑怎样处理array.IndexOf、array. each、Date.now()、获取和设置属性、处理许多有用的JavaScript包。

        在IE8和IE9中,用户可以提交跨源请求,但不能使用XMLHttpRequest。

       只有IE10可以称得上是“现代浏览器”,但是它不能在任何低于Windows 8的系统环境下运行。那么有多少比例的用户正在使用IE10呢?

2.  离线存储并不安全

       当应用程序出现问题时,需要通过日志对它进行调查研究。但是如果应用程序运行好几天也不能发送一个日志,开发者就需要考虑客户端是否出现了问题。

        日志记录会使客户端速度变慢、存储量增长,而且如果在发现问题时才进行日志记录就太晚了。而当前的HTML5技术,允许只存储最新的日志信息,使性能影响降到最低,并且当问题再次出现时,用户能够进行恢复。

       当然,理想的做法是在后台写入日志来实现某种形式的离线存储(不影响客户端的响应),这样的话,当出现问题甚至是机器突然重启,日志也能恢复。

       这个过程可以通过Webworker中的FileSystem API来实现。然而,当前只有Chrome浏览器支持FileSystem API。

       用户可以使用localStorage来代替FileSytem API,可惜localStorage是一个同布API,它的大量的数据将会增加加载时间。

       更糟糕的是,实际上不能在本地机器上存储未加密的日志,因为它们可能包含机密信息。然而目前的一些简单的日志记录方案看起来非常混乱,性能也不好,由于HTML5中没有针对存储的加密API,开发者还需要自己对这些日志进行加密。

3.  不能很好的支持窗口间共享

       有时候你可能想在不同的窗口中共享同一个服务器的连接信息,现在可以使用postMessage来实现,但是你需要有你想发送消息的窗口的句柄。但是如何得知用户当前打开了哪些标签页呢?在Chrome中,不同的标签页使用不同的进程,这种功能对于创建长时间运行的应用程序非常有用。

       在Firefox中不支持这一特性,但可以使用SharedWebWorker来代替。

      你可以使用onstorage事件来对所有其他窗口进行广播,但问题是,并不是所有的浏览器都能提供进行存储事件的窗口的句柄。

4.  Web Workers细节尚未完全实现

       通常情况下,当在HTML页面中执行脚本时,页面的状态是不可响应的,直到脚本完成。而Web Workers是运行在后台的JavaScript,独立于其他脚本,不会影响页面的性能和操作。

      但遗憾的是,Firefox在Workers内部并不支持WebSockets。

      无论是Chrome还是Firefox,都不能很好地解决基于代码位置的Worker脚本无法实例化页面本身的问题,因此代码库必须部署在为页面提供服务的同一个web服务器上,并且不能包含在不同层级的页面中,也无法在不更改代码的前提下为脚本文件重命名。尽管规范明确指出,worker脚本应该能够被相关的脚本实例化。

总结

       HTML5是美妙的,它让开发者在研究新的、有趣的功能时候更有成就感。但是,当开发者遇到HTML5不能实现的功能或者不能很好支持该技术的浏览器时(特别是用户都在使用旧版IE时),又会充满挫败感。

       HTML5正在快速向前发展,并将逐步实现标准化,相信在不久的将来,本文所列出的这些不足之处都将不复存在,届时,用户将有一个完全不同的互联网体验。

英文原文:The Pain of HTML5

【HTML5 之路的绊脚石】相关文章

1. HTML5 之路的绊脚石

2. 通往优秀UI设计师之路的20个路标

3. HTML5是未来浏览器必经之路

4. HTML5发展之路为何如此曲折?

5. 浅谈 HTML5 的游戏化之路

6. 微软官方HTML5九宫格Demo:HTML5九宫格Sudoku在线演示

7. 坦克大战HTML5版——HTML5爱好者原创

8. HTML5超级玛丽游戏重体验 HTML5游戏经典

9. HTML5教程:HTML5的基础写法

10. HTML5/CSS3系列教程:HTML5基本标签使用header,nav和footer

本文来源:https://www.51html5.com/a2883.html

点击展开全部

﹝HTML5 之路的绊脚石﹞相关内容

「HTML5 之路的绊脚石」相关专题

其它栏目

也许您还喜欢