什么是非侵入式javascript
1个回答
展开全部
非侵入式JavaScript(unobtrusive JavaScript)很好地实践了JavaScript代码和标记的分离。可以将所有需要的脚本代码打包到.js文件中。如果查看视图的源代码,您将不会看到有JavaScript代码嵌入在标记中。即使查看视图渲染的HTML标记,也不会看到任何JavaScript代码,脚本留下的唯一痕迹是一个或多个引用JavaScript文件的<script>标签。
您可能已经发现非侵入式JavaScript之所以具有吸引力,主要是因为它遵循了MVC框架设计模式所提倡的关注点分离。它实现了内容显示(由标记实现)和交互行为(由JavaScript实现)的分离。除此之外,非侵入式JavaScript还有其他优势。例如,将所有的脚本代码保存在单独的可下载文件中让浏览器能够在本地缓存脚本文件,从而提高网站的性能。
非侵入式JavaScript也支持在站点上使用渐进增强(progressive enhancement)的策略。渐进增强关注的是传递的内容。只要查看内容的设备或浏览器支持像脚本和样式表这样的特性,页面就会展现更高级的内容,使图像具有动画效果等。Wikipedia对渐进增强有一个良好的概述,参见http://en.wikipedia.org/wiki/Progressive_enhancement。
ASP.NET MVC 3对JavaScript采用非侵入式的方法。框架将元数据放入HTML特性中,而不是将JavaScript代码注入视图来实现某种功能特性(像客户端验证)。使用jQuery技术,框架能够查找和解释元数据,然后将行为附加到所有使用外部脚本文件的元素上。由于有了非侵入式JavaScript工作,才使得ASP.NET MVC的AJAX特性支持渐进增强。如果用户浏览器不支持脚本,访问的站点也仍然会正常运作,(但不会提供好的功能,像客户端验证等。
您可能已经发现非侵入式JavaScript之所以具有吸引力,主要是因为它遵循了MVC框架设计模式所提倡的关注点分离。它实现了内容显示(由标记实现)和交互行为(由JavaScript实现)的分离。除此之外,非侵入式JavaScript还有其他优势。例如,将所有的脚本代码保存在单独的可下载文件中让浏览器能够在本地缓存脚本文件,从而提高网站的性能。
非侵入式JavaScript也支持在站点上使用渐进增强(progressive enhancement)的策略。渐进增强关注的是传递的内容。只要查看内容的设备或浏览器支持像脚本和样式表这样的特性,页面就会展现更高级的内容,使图像具有动画效果等。Wikipedia对渐进增强有一个良好的概述,参见http://en.wikipedia.org/wiki/Progressive_enhancement。
ASP.NET MVC 3对JavaScript采用非侵入式的方法。框架将元数据放入HTML特性中,而不是将JavaScript代码注入视图来实现某种功能特性(像客户端验证)。使用jQuery技术,框架能够查找和解释元数据,然后将行为附加到所有使用外部脚本文件的元素上。由于有了非侵入式JavaScript工作,才使得ASP.NET MVC的AJAX特性支持渐进增强。如果用户浏览器不支持脚本,访问的站点也仍然会正常运作,(但不会提供好的功能,像客户端验证等。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询