Live Query真是个不错的jQuery插件

标签:JavaScript, jQuery, 性能

jQuery的事件处理是非常强大的,然而美中不足的是,它只能对当前存在的jQuery对象绑定事件,这就使得动态创建的对象必须再次绑定事件。
虽然jQuery 1.3推出了live函数,可以自动捕捉新增对象的事件,不过支持的事件较少,且有时会因为其他插件未考虑live函数,没有让事件冒泡而使live失效。

用jQuery判断当前所按的按键

标签:JavaScript, jQuery

刚看到个问题,如何得知同时按下了哪几个键以及按键顺序(难道是格斗游戏的组合键?),其实jQuery实现起来是很简单的。

方法就是用一个外部的数组保存当前按键。
在触发keydown时,把keyCode push到数组里,并删除重复元素;触发keyup时,用$.grep从数组中删除该keyCode。

jQuery选择器的上下文参数

标签:jQuery

刚发现jQuery选择器里可以一次填入多个参数,找了半天也没看到相关文档,于是自己测试了一下。

用GAE+jQuery打造无需数据库的AJAX聊天室

标签:Google App Engine, JavaScript, Python, jQuery

之前写过一篇用Google App Engine+jQuery打造AJAX聊天室,已经用了很多缓存来提高效率了。
不过如果无需长期保存聊天数据的话,实际上连数据库都不需要,直接用Handler Script缓存即可。

这次我没有用XML来做,而是换成了JSON,代码一下就简单了很多。
此外我用到了自己写的一个Queue模块,详情见用Python写的限制长度的队列。你也可以直接使用list,只不过Handler Script缓存占用量会大些。

使用JSONP来取代AJAX进行跨域

标签:JavaScript, jQuery

说到用JavaScript动态加载内容,一般都会想到AJAX。
但AJAX所用的XML其实并非必须,还有其他类型的数据结构(例如JSON和HTML)也可以实现。
而且AJAX有个很大的问题:由于JavaScript的安全限制,AJAX的跨域非常麻烦。
但如果使用JSONP的话,问题就很容易搞定了。

« 看看还有什么好玩意