Modernizr YepNope Tips

article/2025/10/8 23:13:25
<style> <!-- p {text-indent:2em; line-height:24px; font-size:14px} h1, img {margin:0.6em 0} --> </style>

本文由前端开发whqet翻译自WDL,Rochester Oliveira2013年5月2日写的文章Modernizr & YepNope Tips。

每天都有新的更好的浏览器版本产生,现代浏览器(如firefox和chrome)已经达到了第二十个版本有一段时间了,增加了很多很棒的功能。另一方面,开发者必须保证产品能够良好兼容较老的浏览器(ie6这种老古董不能算在内),很多付费用户仍然在使用IE8或者IE7,一些较慢的设备甚至不能运行高负荷的JS和HTML5。

应该如何避免破坏网站,很多人会简单剥离出新的技术,但是我确信应该惠及及时更新的用户,给他们更好的用户体验,如果你想做类似的工作,你应该好好试试Modernizr和YepNope。

啥是Modernizr


它是一个很棒的JS类库,可以通过检测浏览器特征实现渐进增强,你可以通过CSS或者JS判断处理。当然,第一步你得下载、安装它,下面演示如何安装。

<!DOCTYPE HTML>
<HTML lang=”en”>
<HEAD><SCRIPT src=”modernizr.js”></SCRIPT>
</HEAD>
<BODY>
</BODY>
</HTML>

如何Modernizr您的网站

使用方法非常简单,你可以通过JS测试某种功能(例如html音频)是否可用,如果可用加载你需要的内容,如果不可用,则使用替代的方案(通常是槽糕选项)。

这里有段示例代码。

if(Modernizr.audio){alert(“HTML5 Audio enabled”);
}else{alert(“HTML5 Audio NOT enabled”);
}

你也可以测试某个CSS属性以免破坏网站。例如,网站某个效果利用borderimage实现,你可以条件性的加载它,否则调用替代的css或者js效果。

if(Modernizr.borderimage){alert(“Border-image support”);
}else{alert(“Border-image not supported”);
}

可以将CSS3和HTM|L5的检测结果附加在html标签上,防止丑陋的hack和大量不可靠的代码,更好的兼容未来的浏览器。html标签生成的class如下一段代码所示。

<!DOCTYPE HTML>
<HTML lang=”en” class="boxshadow opacity borderimage">
<HEAD><SCRIPT src=”modernizr.js”></SCRIPT>
</HEAD>
<BODY>
</BODY>
</HTML>

这样你就可以在你的CSS文件中使用这些优雅的class了。

.no-borderimage{border: 0px;
}

Modernizr还提供了一个可以检测的特征列表。

好吧,这个时候你可能要问,他可以检测缺乏某个特征,可不可以提供一个替代的方案?我能感受你的痛苦,这个也是我们使用另一个类库Polyfills的原因,他可以在不支持的浏览器里创建html5功能。但是但是,这样可能会加载的比较慢,我们可以使用另一个工具,YepNope。

YepNope-Modernizr的现代版本


Yepnope是一个异步的条件资源加载器,允许用户仅仅记载需要的脚本,速度超快。你可以在项目页面实现自定义下载。

它语法简单,更重要的是实现了与Modernizr的兼容,下面的代码展示了基础语法。


Yepnope({test: /* 判断条件,返回true or false */,yep: /* 返回true时执行的脚本 */,nope: /* 返回false时执行的脚本 */,both: /* 无论如何都会执行的脚本*/,load: /* 每次都会加载的脚本*/,callback:/* 加载完成之后,做什么 */,complete: /* 全部加载完成后,加载什么 */,
});

来看一个html5特征检测的案例,可以方便的检测某个特征的支持情况,判断不同的反应。省却了大量的if else语句。

yepnope({test: Modernizr.audio,yep: ‘audio.js’nope: ‘audio-polyfill.js’
});

再来看一个很cool的案例,

yepnope({test: Modernizr.video,yep: ‘video.css’,nope: [‘video-html5.css’,’video-polyfill.js’],callback: function(url, result, key){if(url == ‘video- html5.css’){alert(“HTML5 Video Ready”);}
)};

判断是否支持html5 video,如果支持加载video.css,否则加载video-html5.css和video-polyfill.js两个文件,加载完成后执行callback里面的代码。

总结

特征检测是一个向用户提供更好用户体验的途径,在需要时使用本地方法,可以保证每次顺利执行。

-----------------------------------------------------------------------------------------------------------------------------------

完工!前端开发 whqet 关注网页前端技术,分享网页相关资源。

-----------------------------------------------------------------------------------------------------------------------------------


http://chatgpt.dhexx.cn/article/OA3VnqcJ.shtml

相关文章

教你如何申请注册微软邮箱【快速接收发送国外邮件】

如果要收发国内的邮件。网易和QQ不错的选择&#xff0c;如果接受国外邮件&#xff0c;还是国际性的公司&#xff0c;微软的outlook据说用户体验感比较好&#xff0c;先申请着&#xff0c;以备不时之需&#xff01; 申请地址&#xff1a;https://outlook.live.com/owa/ 点击创…

OutLook 2010 设置MSN邮箱

OutLook 2010 设置MSN邮箱 1、选择电子邮件账户&#xff0c;点击下一步 2、选择手动配置服务器设置或其他服务器类型(M)&#xff0c;点击下一步 3、选择Internet电子邮件(I)&#xff0c;点击下一步 4、按照提示&#xff0c;输入姓名&#xff0c;邮件地址&#xff0c;在服务…

如何申请@MSN.Com后缀的邮箱?

最近辞职在家无事,想申请个MSN.Com后缀的信箱,在网上搜索了一下,原来只要从下面的地址进入注册即可!注册抵制: https://accountservices.passport.net/reg.srf?nsmsn.com&sl1&lc2052 一口气申请了2个&#xff0c;哈哈! 您已经创建了一个 MSN 帐户 您现在可以使用电…

便捷注册live、MSN邮箱

live邮箱和msn邮箱现在已经不开放注册&#xff0c;而这两个邮箱还有些简短的很不错的用户名可用&#xff0c;方便记忆。网上有一些使用火狐浏览器和工具进行注册的办法&#xff0c;感觉过于繁琐&#xff0c;之后看到一个便捷的方式&#xff0c;亲测有效&#xff0c;分享给大家。…

阿里达摩院证实叶杰平、薄列峰入职,网易科技数字化产业周报来了

NEW 关注Tech逆向思维视频号 最新视频→【国家云强势来袭&#xff01;云计算市场要变天&#xff1f;】 阿里达摩院证实叶杰平、薄列峰入职&#xff0c; 每周一期数字化产业周报&#xff0c; 记录行业大事记、投融资动态和最新人事变动。 RECOMMEND “ 网易智能有12个不同垂直领…

上海创蓝253董事长_宝剑锋从磨砺出,创蓝253召开第四季度誓师大会

2018 年 10 月 13 日&#xff0c;创蓝 253 业务中心全体成员齐聚一堂&#xff0c;举办第三季度表彰大会暨第四季度誓师大会。大会的主题一是表彰业务中心第三季度优秀员工与优秀团队;二是制定第四季度目标&#xff0c;为冲刺全年目标做准备。 此次誓师大会上&#xff0c;创蓝 2…

罗剑锋透视HTTP协议学习笔记---31 | 时代之风(下):HTTP/2内核剖析

31 | 时代之风&#xff08;下&#xff09;&#xff1a;HTTP/2内核剖析 连接前言 连接前言 connection preface PRI * HTTP/2.0\r\n\r\nSM\r\n\r\n在wireshark里称为magic&#xff0c;是一个纯HTTP/1消息&#xff0c;意思是以后的消息切换到HTTP/2 本来h2在ALPN或h2c的connec…

架构师成长之路:如何做基础框架设计?架构师落地的核心能力

前面&#xff0c;已经统一了对框架的认识。 接下来看看如何做基础框架设计&#xff0c;聊聊要做些什么、以及如何做基础框架设计&#xff1b;然后再看看使用基础框架功能的基本方式。 一&#xff1a;基础框架要实现的功能的来源 1&#xff1a;持续积累的通用功能、公共功能 …

浙江省CIO峰会|数据安全+数字化转型,美创特色实践获“年度数字化赋能服务商”

近日&#xff0c;浙江省CIO年度峰会暨数实融合创新发展大会在杭州成功举办。美创科技受邀参加本次峰会&#xff0c;与全省数字化领袖人才共话数字化发展。 对话数字化转型 美创分享能力实践 在本次峰会以“数字化转型的昨天 今天 明天”为主题的论坛对话环节&#xff0c;美创科…

数字化转型导师坚鹏:企业数字化营销能力提升

企业数字化营销能力提升 课程背景&#xff1a; 很多企业存在以下问题&#xff1a; 不清楚数字化营销对企业发展有什么影响&#xff1f; 不知道如何提升企业数字化营销能力&#xff1f; 不知道企业如何开展数字化营销工作&#xff1f; 课程特色&#xff1a; 原创企业数…

构建数据中台建设之路

阿里巴巴数据中台是阿里云上实现数据智能的最佳实践&#xff0c;它是由数据中台方法论组织工具所组成&#xff0c;数据中台方法论采用实现企业数据的全局规划设计&#xff0c;通过前期的设计形成统一的数据标准、计算口径&#xff0c;统一保障数据质量&#xff0c;面向数据分析…

罗剑锋透视HTTP协议学习笔记---25 | 固若金汤的根本(下):数字签名与证书

25 | 固若金汤的根本&#xff08;下&#xff09;&#xff1a;数字签名与证书 黑客虽然拿不到会话密钥&#xff0c;无法破解密文&#xff0c;但可以通过窃听收集到足够多的密文&#xff0c;再尝试着修改、重组后发给网站。因为没有完整性保证&#xff0c;服务器只能“照单全收”…

浦发银行长沙分行党委书记、行长王起,华融湘江银行行长蒋俊文一行莅临麒麟信安调研考察

8月4日下午&#xff0c;浦发银行长沙分行党委书记、行长王起&#xff0c;华融湘江银行行长蒋俊文一行莅临麒麟信安调研考察并开展座谈&#xff0c;旨在进一步加强在金融IT业务领域的交流合作。麒麟信安董事长杨涛、副总裁颜跃进热情接待。 浦发银行及华融湘江银行领导一行来到…

14.十面埋伏的并发:多线程真的很难吗罗剑锋的C++实战笔记

14.十面埋伏的并发&#xff1a;多线程真的很难吗 并发与多线程 并发有很多实现方式,而多线程只是其中最常用的手段 认识多线程 在C中,线程就是一个能够独立运行的函数.你可以写一个lambda表达式让它在多线程中跑起来 auto f // 定义一个lambda表达式 { cout << "t…

转型架构师之路——郑天民

作者&#xff1a;郑天民&#xff0c;网名天涯兰&#xff0c;日本足利工业大学信息工程学硕士&#xff0c;10 年软件行业从业经验&#xff0c;在医疗、安防和电商行业都有涉猎&#xff0c;前后担任系统分析架构师、部门经理、技术总监等职务。目前就职于一家业界领先的移动医疗互…

阿里技术专家章剑锋:5G时代,大数据将在AI、 IOT领域迎来爆发!

点击“技术领导力”关注∆ 每天早上8:30推送 文 | 章剑锋 笔者从 2008 年开始工作到现在也有 11 个年头了&#xff0c;一路走来都在和数据打交道&#xff0c;做过大数据底层框架内核的开发&#xff08;Hadoop&#xff0c;Pig&#xff0c;Tez&#xff0c;Spark&#xff0c;Livy…

大咖分享 | 甘云锋:解码数据中台,打造数据价值与能力共享中心

导语 数字化浪潮正以一种大势所趋的姿态汹涌而来。面对如此澎湃之伟力&#xff0c;产业数字化的转型之路正面临哪些痛点&#xff0c;又迎来何种机遇&#xff1f;怎样构建可持续发展的技术构架体系以激活数据要素的潜能&#xff1f; 日前&#xff0c;数澜科技创始人、董事长甘…

【华人学者风采】高剑峰 微软研究院

【华人学者风采】高剑峰&#xff0c;微软研究院深度学习技术中心合伙人研究经理、IEEE Fellow。曾于 1999-2005 年在微软亚洲研究院自然语言处理组担任研究员。研究兴趣包括机器学习、自然语言处理、互联网搜索、广告预测、机器翻译等。目前的研究方向是将深度学习应用于文字和…

博士申请 | 香港科技大学(广州)梁宇轩老师招收全奖博士/硕士/博后/RA/实习生...

合适的工作难找&#xff1f;最新的招聘信息也不知道&#xff1f; AI 求职为大家精选人工智能领域最新鲜的招聘信息&#xff0c;助你先人一步投递&#xff0c;快人一步入职&#xff01; 香港科技大学&#xff08;广州&#xff09; 香港科技大学是亚洲以至全球领先的研究学府之一…

李剑锋:意识科学就在身边

来源&#xff1a; 科技日报-中国科技网 近些年&#xff0c;生命科学家开始关注神奇的大脑&#xff0c;因此各国纷纷提出各自的脑计划;当前有一个更基础的、但极富争议性的领域却被大家忽视了&#xff0c;就是意识科学。事实脑计划的终点应该就是意识科学&#xff0c;但由于目前…