使用 jQuery 1.9 后,如何判断浏览器版本

忽如一夜春风来,我还在用 jQuery 1.8.1 的时候,无意中发现 jQuery 1.9.0 正式版已出。

于是乎惯例性的对 ShadowBlue本主题内置的脚本进行了升级。我这一换不要紧,差点成残疾,原来 1.9.0 中把 $.browser 取消了,全面改成了 $.support,也许 jQuery 的开发者认为通过特征来区分浏览器比通过浏览器版本来区分更加地有效,不过很多时候我们依然需要知道浏览器到底是啥版本。以前,通过 $.browser 我可以很容易地知道现在跑在什么浏览器上,并写成了一个方便的方法:

于是当我调用这个方法就可以知道目前到底是 IE 几(如果不是 IE 则为 100),现在不行了,于是只有使用非 jQuery 内置方法来判断:

点击查看 DEMO | 源码

亲测 IE6-9 都可以正确识别,IE10 识别为非 IE 了,不过这样也无伤大雅。

图片预读

尽管我们可以使用CSS Sprites等各种CSS手段来避免页面交互时图片加载延时的问题,但有些情况下依然需要使用JS脚本的手段来实现图片预读。

以下是基于jQuery实现图片预读的方法(用jQuery只是为了方便,你也可以使用原生js或者其他类库),以下代码请放入js文件中或者 <script/>块里(事先请保证已加载jQuery类库):

调用的时候,使用以下代码:

如果不喜欢使用jQuery,那么可以将这个方法改写为:

基于json数据的jQuery无限级下拉菜单插件

自己写的一个小插件,基于jQuery,取得json数据以后可以生成一个下拉菜单,理论上是无限级的。

点击查看Demo

也可以通过SVN下载(由于代码无限修改中,所以暂不提供压缩包下载,还请见谅):

这个小插件目前只提供了最基本的线框样式,以后会逐步完善,相关实现方法及使用说明都会后续报道的。天冷不想打字,今天先到这了..

一个最简单的基于PHP+jQuery的AJAX例子

说在前面:本文只作为一个笔记留存用以达到语言重用的效果,可能对于很多大虾过于入门级,请直接无视。

基本上一说起ajax,大家都感觉到比较神秘,我以前也是这样,总觉得这个和荷兰一家足球俱乐部同名的玩意儿是个高深莫测的东西。其实ajax之所以看上去那么蛋疼主要是为了解决各浏览器对js的兼容性问题而写了太多的代码,以至于一看见就头昏。强大简易的jquery扭转了这个局面。

首先说下个人对ajax的简单理解:html、css、js(jQuery等)是给浏览器看的,PHP是给服务器看的,js可以和php对话,而php可以生成html、css和js,以前我们浏览网页的时候,总是通过操作html,通过php告诉服务器我们需要什么内容,然后服务器会在一个新的页面将你请求的信息展示给你;而ajax,即是我们操作html时告诉js,然后js告诉php,php得到命令以后到服务器去取了你要的信息交给js,js再将此信息展示给你。这么看来ajax貌似更复杂一点,但是他带来几个好处:1. 你不需要进入一个新的页面就可以看到你所请求的信息;2.php只需要提取出产生了变化的有限信息即可,减少了重复。

简单扼要的说就是ajax模拟了提交表单的行为,但是把刷新页面这件事交由js在后台偷偷完成了。
继续阅读一个最简单的基于PHP+jQuery的AJAX例子

jQuery 1.4 Released


这几天还在为Google的走留问题闹心的时候,就听到了这么一个好消息,jQuery总算是1.4了,还是released。
jQuery是我最喜欢的一个js库,用起来简洁明了,感觉很爷们,什么都整合在一起,不像Mootools随便实现个什么效果还得去下这个那个文件一大堆把人都搞昏头了,对于我们这种小网站也没有什么太大的性能需求,jQuery就刚好。
到底更新了什么 我还没看,不知道更新了什么东西,不过应该修复了不少bug做了很多改进吧,先给自己的主题换上再说。