Live Query真是个不错的jQuery插件

标签:JavaScript, jQuery, 性能

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

用jQuery判断当前所按的按键

标签:JavaScript, jQuery

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

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

用JavaScript的正则表达式获取页面URL参数

标签:JavaScript

今天看到有人问怎么获取URL中传递的参数,于是用正则表达式写了个通用的函数来处理:
function getParam(param) {
	var r = new RegExp("\\?(?:.+&)?" + param + "=(.*?)(?:&.*)?$");
	var m = window.location.toString().match(r);
	return m ? m[1] : ""; //如果需要处理中文,可以用返回decodeURLComponent(m[1])
}
alert(getParam("language")); //测试一下
简要介绍一下思路。

jQuery选择器的上下文参数

标签:jQuery

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

防止对话框打开新窗口

标签:JavaScript

之前写JavaScript代码时遇到一个问题,当使用showModalDialog或showModelessDialog打开一个对话框时,在这个对话框里执行任何跳转(包括点击超链接和更改window.location)或提交表单都会打开新窗口。
这是由于对话框的特殊性,不允许更改自身的window.location。而由于提交表单很可能是提交到另一个页面,于是便打开新窗口来执行提交了。
但有时候提交操作只需要在本窗口内执行即可,于是连执行window.close()这种操作都会打开新窗口,便显得很不合理了。

JavaScript的闭包

标签:JavaScript

在某个jQuery的论坛看到有人问闭包是怎么回事,于是稍微介绍一下。

« 看看还有什么好玩意