欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

前端“平稳退化”的理解

程序员文章站 2022-03-09 13:06:55
...

问题来源:

我第一次遇到“平稳退化”这个概念是在《javascript Dom 编程艺术》(第二版)。

书本解释:

它是解决不同浏览器兼容性的一种策略或者说处理方式。按《JavaScript Dom 编程艺术》的描述,这个策略是:正确地使用JavaScript脚本,让访问者在他们不同浏览器不支持JavaScript的情况下能顺利地浏览你的网站。也就是说,某些功能无法使用,但基本的操作仍然能顺利完成。

例子:
 

没有使用“平稳退化”策略处理的:

当用户禁用或者浏览器不支持JavaScript时,a的链接就打开不了

<a id="a1">exp</a>
<script>
document.getElementById("a1").addEventListener("click",function() {
    window.location.href="url";
});
</script>

 

 

 使用了“平稳退化”策略的:

若浏览器支持JavaScript,a可以正常使用。若浏览器不支持JavaScript,那么通过href标签依然可以获得a的链接

虽然功能退化了,但依然平稳地实现基本的需求。

<a id="a1" href="url">exp</a>
<script>
document.getElementById("a1").addEventListener("click",function() {
    window.location.href="url";
    return false;
});
</script>

 

我的理解:

“平稳退化”是主要实现和次要实现都考虑的策略,从主要实现中退化,而在不支持主要实现的环境中用次要实现中平稳地运行。