这是第一个(希望是很多)Screencast,它将为 jQuery 实践的简单演示提供快速教程。我计划根据我最近的演讲再做 2-3 个——希望我可以在接下来的几周内发布这些。 (哦,如果我听起来很累——那是因为我确实很累。)享受吧!
或者:观看 原始 (.mov, 3.85MB) 视频。(我怀疑这个版本更清晰——但并非所有人都支持 Quicktime 文件)
这是第一个(希望是很多)Screencast,它将为 jQuery 实践的简单演示提供快速教程。我计划根据我最近的演讲再做 2-3 个——希望我可以在接下来的几周内发布这些。 (哦,如果我听起来很累——那是因为我确实很累。)享受吧!
或者:观看 原始 (.mov, 3.85MB) 视频。(我怀疑这个版本更清晰——但并非所有人都支持 Quicktime 文件)
投票结果已经出来了!以下是 投票中 jQuery 按钮大赛的获奖者。
HTML: (将此复制到您的网站以使用此按钮)
HTML: (将此复制到您的网站以使用此按钮)
HTML: (将此复制到您的网站以使用此按钮)
我对结果很满意,尺寸和风格都有很好的混合——适合每个人。如果每位获奖者可以 联系我,我们会立即安排您的奖品。
请记住:即使您 最喜欢的参赛作品没有获奖,但这并不意味着您不能使用它来推广 jQuery。
另一方面:jQuery 网站的重新设计(和重组)正在如火如荼地进行。有几位专业的网页设计师慷慨地捐献了时间,让新网站栩栩如生。预计很快就会有更多关于此方面的更新。
我再次感谢所有参与者的参与——这是一个很棒的比赛。我非常高兴,希望您也是!
投票现已结束!谢谢大家参与!结果可以在这里找到:jQuery 按钮大赛获奖者.
jQuery 按钮大赛的下一轮即将开始!经过仔细的考虑,评委们将 123 个 jQuery 按钮提交作品缩减至仅 30 个。我们对提交作品的数量和质量感到十分震惊,并想亲自感谢所有参与者。有很多优秀的参赛作品,但最终,以下 30 个按钮因其清晰度、构图和原创性而被选中。
现在轮到您来帮忙了!为了将结果缩减到最终的三个获胜按钮,我们需要您投票选出您喜欢的按钮。您可以投票给任意数量的按钮,但只能投票一次。
您的投票会被跟踪,并且只会被计算一次——但您可以随意投票给您喜欢的任意数量的按钮。
投票将在周一晚上 11:59(EST,GMT -0500)结束。所以现在就参与投票吧——让您的决定有意义!
另一个错误修复版本已准备好供所有人使用!强烈建议您立即升级。与往常一样,如果您发现错误,请 将其添加到错误跟踪器。
与上一个版本一样,jQuery 1.0.3 仅包含错误修复——将所有 API 添加/更改/删除保留到下一个完整版本:jQuery 1.1。
再次感谢 Jörn Zaefferer所做的出色工作,他一直关注着错误,并修复了绝大多数错误。这个版本的发布很大程度上归功于他。
此版本包含一个新软件包:与此版本相关的所有内容的完整 zip 文件。这包括三个版本的 jQuery(常规版、精简版和压缩版)、测试套件和所有文档。现在,您不必自己构建它,只需拥有自己的副本即可。
此版本中已关闭的所有错误或改进的完整列表
注意:虽然下面显示了大约 60 个错误,但其中许多是垃圾邮件发送者搞的——所以我不确定哪些错误是此版本修复的,哪些只是被重新关闭的僵尸错误。我非常肯定,虽然此版本修复了很多错误,但没有 60 个。
更新:比赛现已结束!感谢大家提交的作品。我们将很快开始评审过程。
为了鼓励人们推广 jQuery 项目,并让尽可能多的人参与到社区中,我们将举办一个比赛,设计一个“Powered by jQuery”按钮。拥有一个设计精美的按钮将是 jQuery 用户提高项目知名度的好方法,同时也是一个让您的网站看起来很酷的元素!
规则
奖品
奖品将通过普通邮件寄往世界各地。
所有投稿应通过标准超链接在本帖的评论区进行。请确保在提交作品时提供有效的电子邮件地址。
这是一个真正帮助扩展 jQuery 社区的机会,创建一个顶级按钮,将获得大量曝光。祝大家好运!
Mozilla 刚刚发布了 http://www.worldfirefoxday.com/,一个感谢所有为 2006 年世界 Firefox 日做出贡献的人的网站。该网站允许用户搜索朋友姓名,并以有趣的方式显示它们。
该脚本是 Rotator 脚本和一些流畅的 AutoComplete 的组合,它为搜索提供动力。
慢慢地输入一个名字,看看结果如何实时过滤并加载到轮播器中。然后,如果结果数量超过 20 个,您可以“分页”浏览它们。该脚本支持“上一个”按钮,但它已被隐藏。
作为先前 事件选择器对决 的后续行动,一场新的 斑马表格对决 来了。
使页面上的所有表格都具有条纹(“斑马”)背景(每隔一行颜色不同)。
规则
预期结果
var tables = document.getElementsByTagName("table"); for ( var t = 0; t < tables.length; t++ ) { var rows = tables[t].getElementsByTagName("tr"); for ( var i = 1; i < rows.length; i += 2 ) if ( !/(^|\s)odd(\s|$)/.test( rows[i].className ) ) rows[i].className += " odd"; }
注意:这包括一个检查,以确保表格行上不存在“奇数”类。所有现代库都对此进行了处理。
var tables = document.getElementsByTagName("table"); for ( var t = 0; t < tables.length; t++ ) { var rows = tables[t].getElementsByTagName("tr"); for ( var i = 1; i < rows.length; i += 2 ) YAHOO.util.Dom.addClass( rows[i], "odd" ); }
注意:虽然他们自己的开发者网站 不同意。
var each = dojo.lang.forEach; each(document.getElementsByTagName("table"), function(table){ each(table.getElementsByTagName("tr"), function(row,i){ if ( i % 2 == 1 ) dojo.html.addClass( row, "odd" ); }); });
注意:一个常用函数被分配给一个变量,以使代码更短。
$A(document.getElementsByTagName("table")).each(function(table){ $A(table.getElementsByTagName("tr")).each(function(row,i){ if ( i % 2 == 1 ) Element.addClassName( row, "odd" ); }); });
var byTag = getElementsByTagAndClassName; forEach( byTag("table"), function(table) { var rows = byTag( "tr", null, table ); for ( var i = 1; i < rows.length; i += 2 ) addElementClass( rows[i], "odd" ); });
注意:一个常用函数被分配给一个变量,以使代码更短。
$$("table").each(function(table){ Selector.findChildElements(table, ["tr"]) .findAll(function(row,i){ return i % 2 == 1; }) .invoke("addClassName", "odd"); });
$$("table").each(function(table){ $ES("tr", table).each(function(row,i){ if ( i % 2 == 1 ) row.addClass( "odd" ); }); });
$("tr:nth-child(odd)").addClass("odd");
如果您觉得您有比这里发布的更优雅的解决方案,请在下面发布它们,以便更新列表。
这些是其他读者提交的新条目。
AJS.map(AJS.$bytc("table"), function(table) { AJS.map(AJS.$bytc("tr", null, table), function(row, i) { if ( i % 2 == 1 && !/(^|\s)odd(\s|$)/.test( row.className ) ) AJS.setClass( row, "odd" ); });Prototype 1.5.1: (demo)
$$('tr:nth-child(odd)').invoke('addClassName', 'odd');
我忘记在 1.0.2 版本说明 中提及,前几天,有一个微小的 API 更改。这是一个错误,因为我们应该等到下一个主要版本 (jQuery 1.1) 才会进行 API 更改。
正如 Steven Wittens 所总结的那样,以下是更改背后的前提
在 jQuery 1.0.2 中,‘success’ 回调函数的第一个参数已更改为返回实际数据,而不是 XMLHttpRequest 对象。使用 ‘dataType’ 参数到 $.ajax() 来控制数据的返回方式。请注意,jQuery 现在可以为您解析 XML、JSON 和 JavaScript。
jQuery 1.0.1
$.ajax( { success: function (xmlhttp) { var data = $.httpData( xmlhttp ); // 'data' holds the response data from the server } );
jQuery 1.0.2
$.ajax( { success: function (data) { // 'data' holds the response data from the server } );
感谢,Steven,为这个提纲 - 对不起,大家,给你们造成的不便!
jQuery 1.0.2 现在可以供您使用了!此版本是一个巨大的错误修复版本 - 强烈建议您立即升级。与往常一样,如果您发现错误,请 将其添加到错误跟踪器。
除了拥有更好的测试套件之外,此版本的重大改进是针对常见任务(如 AJAX 操作)提供更好的跨浏览器兼容性。但是,在功能上,此版本没有添加任何主要功能(尽管,预计 1.1 版本会有一些新代码)。
我想借此机会向大家介绍 Jörn Zaefferer。此版本的很大一部分是通过他实现的。他负责彻底改造测试套件(现在拥有超过 260 多个测试!)以及修复大多数当前错误和增强功能(超过 60 个!)。如果您想感谢某个人的话,应该感谢他。
此版本中已关闭的所有错误或改进的完整列表
在评论中留下您的答案。
我们真的希望更好地了解你们中的许多人,不仅仅是硬核开发者,还有日常用户。所以告诉我们吧!
(或者,“让我们了解您的一些情况,并无耻地宣传您的项目!”)。
更新:感谢所有迄今为止做出回应的人。
我必须说,我惊讶于你们中有多少人将 jQuery 用于公司网站。你们中许多人(或您的公司)可能考虑从 主页 捐赠给 jQuery 项目。当然,这不是必需的,但它确实通过支付开发成本和控制每月服务器账单来确保 jQuery 保持强大。:)
除此之外,我想补充一点:错误报告、插件和其他对社区的贡献与捐款一样有价值。我的观点是:让我们记住,要以任何方式回馈。
所有您的评论都非常宝贵,无论您是从事公司网站的大人物,还是为乐趣而构建网络应用程序的小人物。请继续!