什么是“平稳退化”和“渐进增强”理念?

265 查看

平稳退化:
你做了一个网页,如果一个打开网页的人使用的是IE6浏览器,IE6浏览器默认情况下JavaScript支持功能是禁止的,所以当他打开你这个网页时,IE6会提示“是否要启用JavaScript功能?”,如果那个人选择“启用”,那么他就能够看到这个网页中用JavaScript编写的内容。如果他选择“禁止”,那么他就没法看到你用JavaScript编写的内容。
在客户选择“禁止”JavaScript功能的情况下,我们怎么写JavaScript代码呢?这就是“平稳退化”要解决的问题。
用户打开一个网页,目的是看到网页的内容,所以,如果当他打开网页的时候,即使选择“禁止”JavaScript功能,他也能看到网页的主要内容。但是如果编写JavaScript代码的方式不考虑这种情况,那么客户就可能看不到网页的内容。
渐进增强:
在客户的浏览器支持JavaScript功能的前提下,我们才考虑“渐进增强”。
浏览器有不同的版本,高级版本支持的JavaScript功能就多一些,低级版本浏览器支持的JavaScript功能就少一些。所以就算浏览器支持JavaScript功能,我们也要区别对待不同版本的浏览器。例如:如果你用JavaScript5的对象和方法来编写程序,那么Firefox,Safari,Chrome,IE等低级版本,可能就不能使用你的程序。所以你解决这个问题的方式就叫“渐进增强”,基本上就是一些判断语句------如果这个浏览器不存在这个对象或者方法,则程序退出。
所以,大概可以说:“平稳退化”是在浏览器没有JavaScript功能,或没有开启JavaScript功能情况下,我们解决这种问题的方式;“渐进增强”是在浏览器开启JavaScript功能后,如果浏览器版本不支持某些JavaScript能力,我们解决这种问题的方式。