本周 jQuery 快讯,第 1 期

发布于 作者

这是我们希望成为每周系列博客文章的第一篇,介绍 jQuery 世界正在发生的事情。我们将看看新的或更新的插件、最近的教程以及其他与 jQuery 相关的新闻。

书籍

Learning jQuery 1.3

Jonathan Chaffer 和我(Karl Swedberg)刚刚出版了我们的书籍 Learning jQuery 1.3,由 Packt Publishing 出版。它是流行的 Learning jQuery 书籍的更新版,该书籍于大约两年前发布。新版包含自第一本书发布以来引入的库新增内容(事件命名空间、JSONP、新效果方法等)、改进和扩展的示例、扩展的插件章节以及所有方法和选择器的快速参考。它在 Packt 网站amazon.com 上有售。

杂志

JSMag 是一家面向 JavaScript 开发人员的新兴杂志,他们刚刚出版了第一期。该杂志的目标是为“JavaScript 开发人员提供高质量的 JavaScript 内容,以教育、激励和启发他们使用 JavaScript 的工作”。仅 PDF 格式的期刊 每期售价 4.99 美元,批量授权折扣 从个人价格的 30% 开始。第一期内容包括

  • 无需 alert() 的 JavaScript 调试
  • ExtJS 简介
  • 社区新闻
  • 使用 YUI 进行单元测试
  • jQuery 1.3 的新功能
  • JavaScript 中的函数式编程

查看第一期的 示例(PDF)。

插件

在不断增长的 jQuery 插件中,本周更新了一些常青树插件。Ariel Flesler 发布了其 LocalScroll 插件 的 1.2.7 版,该插件可动画化网页内的锚点导航。Mika Tuupola 更新了他的 Jeditable 插件,用于无缝的原位编辑,其中包含许多“回调钩子”和一些错误修复。Josh Bush 的 Masked Input 的新版本也包含错误修复和一些功能增强。

在寻找一个简单、快速且灵活的网格/电子表格组件后,Michael Liebman 决定自己编写一个。本周他发布了一个 贡献者招募信息,寻找“能够接手并将其转换为每个人都可以使用的工具的经验丰富的开发人员”,也许可以通过将其转换为插件来实现。代码可以在 http://code.google.com/p/slickgrid/ 中找到。

教程

Steve Reynolds 发布了一篇教程,介绍如何使用 jQuery 创建 OS X Dashboard 小部件。对于那些想知道“JSONP 到底是什么,为什么要用它?”的人,Raymond Camden 在 O’Reilly Inside RIA 博客中给了你答案(提示:跨域 ajax)。

快速提示

我们经常在 jQuery Google 集团 中看到关于为什么 jQuery 脚本在 Internet Explorer 中“失效”但在所有其他测试浏览器中都能正常运行的问题。在这些情况下,最常见的解决方案是搜索并删除对象文字中最后一个键值对后面的逗号

var foo = {
  bar: 'ice cream',
  baz: 'luhrmann', // <-- get rid of that comma!
}

这尤其会让习惯使用其他语言(如 PHP)的开发人员感到困惑,在这些语言中,包含尾随逗号被认为是一种“最佳实践”。JSLint 是一个很棒的工具,可以定期运行你的 JavaScript 代码,因为它能够很好地识别并标记这些错误和警告。如果你使用 TextMate,JavaScript Tools 包 每次保存 JavaScript 文件时都会运行“快速 JSLint”,并运行完整的 JSLint 以及其他一些便利功能,这些功能来自包的菜单。

好了,本周就到这里。一定要查看 本周 jQuery UI 快讯

关于“本周 jQuery 快讯,第 1 期”的 13 条评论

  1. Pingback: 本周 jQuery UI 快讯,第 1 期 « jQuery UI 博客

  2. 关于 jslint 的快速提示……如果你使用 komodo 编辑你的 js 文件,它会一直进行后台错误检查。

  3. Jason Kuhn 说:

    快速提示的补充

    如果你正在编写单例对象(通常是 jquery/ui 中的选项),并且你有一个可能经常更改的值,例如暂时设置活动选项卡,那么最好确保该值不是列表中的最后一个。

    var options = {
    selected: 2,
    orientation: ‘vertical’
    };

    这样,你可以轻松地将其注释掉,而不会出现上面快速提示中提到的额外逗号问题。

    这个示例将在某些浏览器中导致错误
    var options = {
    orientation: ‘vertical’,
    //selected: 2
    };

    改用这种方式
    var options = {
    //selected: 2,
    orientation: ‘vertical’
    };

  4. Kevin Peno 说:

    关于 IE 兼容性问题。开发人员应该做的另一件事是在开发过程中在浏览器中启用严格的 JavaScript 警告,例如 Firefox。这将标记其他可能导致兼容性问题的问题(包括尾随逗号,我最后检查过了),主要是与语法相关的问题。这样,当你在 IE 中测试时,如果它不是你的主要开发浏览器,你就不太可能遇到问题。

    我喜欢这个博客的想法。我期待着一些酷炫的技巧和不太流行但有用的插件的曝光!

  5. Mack Hankins 说:

    我很喜欢阅读新书。现在在第 5 章,我以前从未使用过 Jquery。我会非常喜欢博客的这个部分。

  6. @Gordon: 是的,我最初写的是“被一些人认为是最佳实践”,但我担心我写得太啰嗦了。无论如何,至少 Drupal 的编码规范文档 建议这样做:“请注意最后一个数组元素后面的逗号;这不是打字错误!如果稍后在列表末尾添加另一个元素,它可以帮助防止解析错误。” 回想起来,我可能应该用一个更弱的论点来说明尾随逗号是“完全有效的语法”,正如 PHP 手册 中提到的那样。

  7. 我之前强制我的用户切换到 Firefox 来使用我构建的 Web 应用程序,仅仅是为了提高速度(为了重新创建 Java 程序,需要进行大量 Ajax 加载)。使用 Jslint 运行了几次后,找到了那个错误的逗号,现在 IE 也能正常工作了。

    再说一遍,我几乎想把逗号放回去,继续强迫 Firefox 使用它,希望他们喜欢它,并且在家里也能用它。

  8. Howard Jess 说:

    对于对象字面量的一种替代语法可以帮助避免尾随逗号问题(如果你能习惯它)

    var foo = {
    bar: 'ice cream'
    ,baz: 'luhrmann'
    ,bongo: 'feinman'
    }