15 天 jQuery

发布日期: 作者:

一个惊人的新的 jQuery 资源刚刚到来: 15 天 jQuery。这是一个由 Jack Born 运营的新网站,致力于提供简单的教程来帮助你开始使用 jQuery。Jack 在他的项目中使用 jQuery 后创建了这个网站

我认为 [jQuery] 是 Javascript 的瑞士军刀——它小巧、多功能,而且几乎没有学习曲线……如果你在这些教程结束后还没有成为高级 Javascript 代码的黑带高手,那么你就能获得 110% 的退款。

到目前为止,他已经发布了四个供你浏览的教程,但他计划在接下来的两周内将教程数量增加到 15 个。之后,Jack 将继续探索并发布文章——所以你应该 立即订阅,趁它还很年轻!

对于任何 jQuery 或 Javascript 编程的新手来说,这绝对是一个绝佳的资源。我特别喜欢 斑马条纹 教程,它向你展示了如何使用 jQuery 轻松简单地执行一项常见操作。

事件选择器对决

发布日期: 作者:

简单挑战: 找到两个不同元素(使用它们的 #ID 作为参考)下的所有 LI 元素,并绑定一个单击处理程序,该处理程序会更改 LI 的文本颜色。以下是在所有流行的事件/选择器库中执行此操作的方法。

Behaviour + Prototype

Behaviour.register({
  '#item li': function(element) {
    Event.observe(element, 'click', function(event) {
      Event.element(element).setStyle({color: '#c00'});
    });
  },
    
  '#otheritem li': function(element) {
    Event.observe(element, 'click', function(event) {
      Event.element(element).setStyle({color: '#c00'});
    });
  }
});

Prototype 1.5.0

$$('#item li, #otheritem li').each(function(li){
  Event.observe(li, 'click', function(event) {
    Event.element(li).setStyle({color: '#c00'});
  });
});

event:Selectors

EventSelectors.start({
  '#item li:click, #otheritem li:click': function(){
    this.setStyle({'color': '#c00'});
  }
});

jQuery

$("#item li, #otheritem li").click(function(){
  $(this).css('color', '#c00');
});

我认为代码本身就说明了一切,哪一个最容易使用和理解。我发现 Prototype 正在 向 jQuery 的当前方向迁移——而 jQuery 本身则正在使用一些非常酷的新功能突飞猛进。一定要关注新版本,它们很快就会发布。

Plazes 重新设计

发布日期: 作者:

最近,Plazes(一个流行的地理定位 Web 应用程序)发布了其服务的重新设计版本。如果你看一下它是如何实现这些酷炫效果的,你会发现它在幕后使用了 jQuery。

Plazes People 页面上可以最佳地看到它在行动。该页面的目的是让你浏览并查看哪些人已连接以及他们当前的位置。这个页面有一些酷炫的功能,你可以试玩一下

  • 尝试移动/缩放地图——屏幕左侧的人员列表将动态更改并重新加载。
  • 在地图顶部的输入框中,输入部分城市名称,它会自动完成最相关的名称。
  • 单击左侧菜单中的用户将带你到他们在地图上的位置。

总的来说,这是一个很好的例子,展示了 jQuery、Google 地图和一个 出色的开发团队 将它们整合在一起可以实现什么。

Firebug 调试器

发布日期: 作者:

Joe Hewitt 正在更新他出色的 Firebug Firefox 扩展。如果你不熟悉它,你应该了解它。它提供了详细的页面错误跟踪、XMLHTTPRequest 跟踪、DOM 导航——所有 Javascript 开发人员都需要的东西。

新版本的 Firebug 添加了一个新功能: Javascript 调试。这将允许你在代码中设置断点,暂停应用程序,重新启动它,以及各种酷炫的功能。如果你觉得这很有趣,你应该联系 Joe,因为他需要测试人员来帮助他启动这项工作。

Thickbox

发布日期: 作者:

Cody Lindley 刚刚发布了一个名为 ThickboxLightbox/Greybox 的全新版本。此版本在其他库的基础上提供了一些很棒的附加功能。具体来说,此版本完全是非侵入式的——它使用自然 href、src 和 title 属性来为弹出框提供种子。即使你没有启用 Javascript,它仍然可以正常工作。它还可以动态加载 html 块并在覆盖层中显示它。总的来说,这是一个很棒的版本,其中最重要的是它使用了 jQuery 来将所有内容整合在一起。所以,快去看看,试用一下,并告诉 Cody 你对此的看法!

jQuery 可视化地图

发布日期: 作者:

Jeffery Chiang 最近向 jQuery 邮件列表提交了一个出色的 jQuery 库可视化表示。它显示了所有不同的插件以及它们支持的方法/功能(借鉴自 jQuery 文档)。类似的图表已经为 Prototype 库完成——但没有一个像 jQuery 一样拥有酷炫的 Devo 帽子。如果有人有冒险精神,使用这张地图的样式可以对文档页面进行一次很棒的重新设计。

获胜的 Opera 小工具使用 jQuery

发布日期: 作者:

Audun Wilhelmsen(skyfex),一位住在挪威的 jQuery 用户,最近参加了 The Gathering,这是世界上最大的计算机活动之一。在那里,他参加了 Opera 赞助的 小工具开发竞赛。新的 Opera 9 Beta 有一个完整的 Widget 框架,肯定会挑战 Yahoo! Widgets 和 OSX Dashboard。

评委在完成最终分析后,决定 Audun 是获胜者。这不仅对他来说是个好消息(他赢得了一台价值 6000 美元的超级游戏机),而且也证明了 jQuery 在快速 Javascript 开发中的有效性。

Audun 的获奖应用程序名为 KnowledgeMate。你将搜索内容输入一个字段,它会同时搜索多个搜索引擎(包括图片搜索引擎),并返回相关结果。它非常快,看起来很漂亮,而且非常实用。我强烈推荐下载新的 Opera Beta 版,试用一下这个小工具,即使没有其他原因。恭喜 Audun!

手风琴、值、onComplete 和错误修复!

发布日期: 作者:

这是过去一周左右发布的所有修复和新功能。我很快就会将更多关于它们的信息添加到文档中。

新的演示

新功能

  • empty()——你可以删除元素的所有子节点。
    // Deletes the contents of all DIV elements
    $("div").empty();
  • is(Expression)——测试匹配的元素是否匹配该表达式。等效于: $().filter(Expression).size() > 0。
    // Tests to see if a DIV has a class of test
    if ( $("div").is(".test") ) {
      alert( "test div found!" );
    }
  • html()——如果你不向 html() 方法提供任何参数,它将返回第一个元素的 innerHTML。
    // Copy the HTML contents into a Textarea
    $("textarea").val( $("#block").html() );
  • val()——与 html() 方法相同,但针对 value 参数(如果提供了参数,则设置值,没有参数——返回第一个值)。
    // Copy a value from one input to another
    $("input#hidden").val( $("input#name").val() );
  • $.postXML() 和 $.getXML——对于 AJAX 插件,与 $.post() 和 $.get() 相同,但强制尝试获取返回的 XML,而不管 Content-Type 是什么。
    // Get the XML contents of a file
    $.getXML("file.xml",function(xml){
      $(xml).find("title") // ...
    });
  • 添加了一个新的 “normal” 速度(400ms)用于动画。
    // Slide a DIV in at normal speed
    $("div").slideDown("normal");
  • 现在,为动画设置 onComplete 处理程序变得容易多了。
    $("div").show("slow",function(){
      alert("all done!");
    });

错误修复

  • Opera 和 AJAX 插件现在可以很好地协同工作。
  • 已解决与附加文本节点相关的问题。
  • 已优化对 IE 和 AJAX 插件的处理。
  • 已修复 #id 表达式通过标签检索的问题。
  • 已实现对包含连字符的类的删除处理。
  • 已修复将事件绑定到动态创建的 HTML 的错误。
  • 已修复 show() 未显示默认情况下显示为 none 的元素的错误。
  • 已解决另一个 Prototype 1.3 和 jQuery 错误。
  • 已解决动画对 overflow 属性的破坏问题。
  • 最后,臭名昭著的高度/宽度自动动画错误已得到解决!

jQuery 每周汇总

发布日期: 作者:

Mark Panay 撰写了 一篇后续文章,作为 《JQuery for Web Designers》 的补充。这一次,他强调了保持内容简洁,并使用 jQuery 展现博客文章和文章的完整内容。这与我在最近的项目 Ouioo 中使用的技术非常类似。

此外,Mark 推出了一个新的 音乐创业公司,其网站使用 jQuery fx 和 AJAX。引用 Mark 的话:

“[jQuery] 替换了之前使用的“行为、原型和 AHAH”脚本,从而为我节省了大约 150k… :),并使代码更简洁易于修改。整个过程也只花了 30 分钟。”

最后,Frank Quednau 发布了一篇博客文章和一个 jQuery 查询演示。如果您好奇 jQuery 究竟能够查询什么,这将是一个很好的沙箱,您可以进入其中玩玩。

AJAX 新 FX 等等!

发布时间: 作者:

用于 jQuery 的新 AJAX 插件 已准备就绪,如果您正在使用最新代码,它已经集成到其中。除此之外,还有一些新的 效果 可以使用:fadeIn、fadeOut 和 center。我还修复了许多错误,这些错误也已包含在本次发布中。

  • 使用 $(…,Context) 参数与非 HTML 文档相关的問題已解决。
  • 现在可以将 jQuery 对象作为上下文传递:$(“title”,$(“head”));
  • 修复了 IE 中属性解析不正确的问题。
  • 修复了另一个与切换内联元素相关的問題。

下一个版本将重点关注额外的辅助方法,以更轻松地导航文档(并减少对神秘的 XPath 序列的依赖),以及避免持续使用 .get(0) 的方法。如果您想讨论 jQuery 的开发,请加入我们的 邮件列表IRC 频道