HTML5离线存储

何为离线存储?或许你经常碰到手机没信号或者流量不够用的情况,又或者上班时分突然断网,当你尝试打开页面时,给你反馈的只有网络无法连接之类的提示。但是如果你之前打开过设置了离线存储的页面,那么你便可像有网络般浏览网页,这就是离线存储的功能,而且它可以缓存任何文件。

全文»

历史记录与 HTML5 history

我们知道,在javascript中history作为BOM的一部分提供了浏览器的历史记录。我们可以通过方法history.back()返回上一页,history.forward()前进一页,history.go()跳转到任何页。

我们还知道,ajax可以不重载页面刷新网页局部,频繁的ajax操作让它有一个缺陷,即无法记录浏览器的历史记录,很自然我们就无法使用前进或后退键回到上一个操作的界面。像下面给出的例子,“ajax载入新闻列表”,当我们浏览了每页新闻,希望通过回到上一页,但是通过后退键是无法做到,这就是问题的所在,如何解决这个问题?

全文»

saveSvgAsPng 将svg转换为图片

曾经有很多次萌发这样的想法,如果有这么一个功能,可以通过调用某个标签里代码,将这些代码在网页中展现的效果保存为图片,那将是多么酷的事。这篇文章介绍一个将页面svg转换为图片的js库—saveSvgAsPng,这个库只有4kb大小,另外通过此库保存的图片不仅仅局限于png格式,你可以通过调用它的函数来设置其他的图片格式。

全文»

使用svg和vml制作一个数据图形

前端图形开发越来越备受关注,或许近两年受html5中canvas元素的推动。对于前端来说,图形开发主要涉及有canvas、svg以及过气的vml。虽然它们很多特性都相同,但个人认为canvas更适合游戏方面的开发,而尽管svg很早(1999年)就被w3c提出,但其状态一直不温不火。为了兼容IE9以下的低版本浏览器,显然vml是我们无奈的选择。其实很多关于图形的js库,都采用将svg和vml封装起来,这样你在使用时并不需要关心这两种语法的具体实现,只需要传入相关数据(一般为json格式)便可在不同的浏览器生成相应的图表,比如highchart和raphaeljs。本篇文章主要描述如何用svg和vml生成一个月流量图,另外还会提到它们的一些问题。

全文»

浏览器检测和属性支持方法总结[js-html-css]

浏览器检测是前端开发工作中最常见的问题,有时因为一个属性的不支持,我们需要判断浏览器并对不支持的浏览器做优雅降级。而检测浏览器的方法也有多种,总体来说,我们可以使用js的特性检测(能力检测)或者window对象里的ua、也可以用html的注释、又或者通过css的hack来处理不同浏览器。在实际开发过程中,也需要判断一些属性的支持情况。因为内容比较繁杂,所以在此做个总结。

全文»