🎶 Sym - 一款用 Java 实现的现代化社区(论坛/BBS/社交网络/博客)平台

📕 思源笔记 - 一款桌面端笔记应用,支持 Windows、Mac 和 Linux

🎸 Solo - B3log 分布式社区的博客端节点,欢迎加入下一代社区网络

♏ Vditor - 一款浏览器端的 Markdown 编辑器

jQuery 1.8 beta1 新特性

jQuery开发团队前几天发布了1.8的首个测试版本。 

该版本引入了大量的新特性,包括: 

1. 模块化 

在jQuery 1.8中,您可以移除一些不需要的模块,以构建一个专属的jQuery版本。通过基于grunt的新构建系统,你可以轻松实现该功能。可以移除的模块包括ajax、css、dimensions、effects和offset。更多信息可参阅README file。 

2. 根据浏览器为CSS属性加前缀 

某 些CSS属性前带有供应商前缀,这表明该属性还未纳入W3C标准。在jQuery 1.8中,可以采用无前缀的属性名,并自动生成适合当前浏览器的前缀。例如,在Chrome中,jQuery调 用$("#myscroll").css("marquee-direction", "backwards")将设置为“-webkit-marquee-direction: backwards”。 

3. 动画 

在jQuery 1.8中,你可以更容易地添加或修改动画。新的“$.Animation”提供了坚实的基础,并修复了之前版本中的许多bug,以便你的动画能够支持老版浏览器。如果你的Web应用只针对现代浏览器,你可以完全移除animation模块。 

4. CSS选择器引擎Sizzle 

jQuery 1.8中重写了选择器引擎,大大提升了性能。此外,选择器引擎Sizzle修复了一些边缘问题和bug,包括对于多个选择符(~ > +)的改进、更好地检测浏览器bug等。 

5. XSS防护 

$()方法可以创建HTML元素,如果被用来传递一个<script>标签,则可以运行脚本。开发者有时会忘记这一点,将不受信任的源或用户输入的字符串传递到jQuery,就可能导致脚本注入,使攻击者可以窃取cookies或破坏页面。 

jQuery 1.8引入了一个新的方法“$.parseHTML”。它可以让你指定HTML字符串,它们会被作为HTML解析,$()将作为选择器来解析字符串。 “$.parseHTML”也提供了一种方式将HTML解析为DOM片段,并控制可能包含的任何脚本的执行。这对于由Content Security Policy (CSP)控制的JavaScript环境来说特别重要,因为注入的脚本可能导致安全警告或异常。 

在1.9中,一些HTML字符串将不再会被$()识别。 

6. 不建议使用或将移除的功能 

  • $.browser:通过user agent字符串来检测浏览器不是一个好主意,在1.9中将完全移除该方法,不过你可以使用兼容插件。或者你可以试试Modernizr
  • $.sub:该方法是在jQuery 1.5中引入的,但是被证明不是很有用,将被移到jQuery 1.9兼容性插件中。
  • 全局AJAX事件:一些事件(如ajaxStart)可以被附加到不在一个文档中的任何元素中,这将导致效率低下。在1.9中,Ajax事件将只能附加到文档中。

详细信息:JQUERY 1.8 BETA 1 

下载地址:http://code.jquery.com/jquery-1.8b1.js


转自:http://www.w3cfuns.com/article-713-1.html


欢迎注册黑客派社区,开启你的博客之旅。让学习和分享成为一种习惯!

留下你的脚步