当前位置: 首页 > 图文教程 > 网络编程 > Javascript > JQuery 初体验(建议学习jquery)

Javascript
关于javascript document.createDocumentFragment()
javascript 有趣而诡异的数组
javascript 兼容鼠标滚轮事件
javascript mouseover、mouseout停止事件冒泡的解决方案
javascript 放大镜效果js组件 qsoft.PopBigImage.v0.35 加入了chrome支持
javascript 表格排序和表头浮动效果(扩展SortTable)
Cookie 注入是怎样产生的
javascript RadioButtonList获取选中值
javascript fullscreen全屏实现代码
常用简易JavaScript函数
用js实现的检测浏览器和系统的函数
File文件控件,选中文件(图片,flash,视频)即立即预览显示
js 获取键盘值用法(兼容IE及Firefox)
javascript 鼠标滚轮事件
javascript 原型模式实现OOP的再研究
js 判断浏览器类型 去全角、半角空格 自动关闭当前窗口
javascript html 静态页面传参数
Firefox window.close()的使用注意事项
javascript removeChild 使用注意事项
js cookies 常见网页木马挂马代码 24小时只加载一次

Javascript 中的 JQuery 初体验(建议学习jquery)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 160 ::
收藏到网摘: n/a

最近从朋友那儿听说,写JavaScript,JQuery是个不错的东东,市场份额达到70%之巨。所以去下载了一份体验了一下。 在JQuery的网站上发现,这个东东提供两种版本下载。一种是原版,接近120K,另一种是把水分压缩掉的,近60K。太久没做应用技术了,没想到居然出来了这么多新鲜玩意儿,JavaScript还可以压缩水分,所以顺便又去了解了一下JavaScript的Packer(这是在线链接),如果有兴趣,这里可以下载它的.NET、Perl、Wsh和PHP等几个版本。

  不扯远了,说回正题。压缩版的JQuery的确合适网络传输提速,但压缩后的JQuery只有一行,不怎么适合VCS(版本控制系统)管理。所以还是先用非压缩版的,以后发布产品的时候再压缩就好。

  在SVN上创建好项目之后,写了个Readme上去,因为涉及到配置之类的东西,用纯文本写的不方便阅读,所以用HTML写。之所以不用WPS(或Word)写,同样是因为VCS的原因,还是非二进制的文本好控制些。不过HTML里面的Header没得Word的自动编号功能,如果哪天在一堆Header中间插入一个,就要把后面的编号全部打乱,改起来痛苦。所以就想起了JQuery,用它来编号,顺便小试下牛刀。

01 $(function() {
02 var indexs= [0, 0, 0];
03 $(":header").each(function() {
04 var content = $(this).html();
05 if ($(this).is("h1")) {
06 indexs[0]++;
07 indexs[1] = 0;
08 content = "" + indexs[0] + ". " + content;
09 } else if ($(this).is("h2")) {
10 indexs[1]++;
11 indexs[2] = 0;
12 content = "" + indexs[0] + "." + indexs[1] + ". " + content;
13 } else if ($(this).is("h3")) {
14 indexs[2]++;
15 content = "" + indexs[0] + "." + indexs[1] + "."
16 + indexs[2] + ". " + content;
17 }
18 $(this).html(content);
19 });
20 });

  哈哈,效果还不错。但其实这个代码是第二版了,最开始的时候是按h1、h2、h3来搜索的,处理起来还要麻烦些。特别是h3还放在一个class为content的div里面,用JQuery选项的时候还用到了:first过滤器,像这样:

var h3 = $(this).nextAll(".content:first").children("h3");

  后来想到,说明里很多路径都是用变量代替的,比如$(PHP_HOME)这样的,不如加个颜色标识,所以又添加了这样一段代码在$(function() {...})中。

20
21 $(".path").each(function() {
22 var content = $(this).html();
23 content = content.replace(/(\$\(.*?\))/, "$1")
24 $(this).html(content);
25 });

  还好我所有路径都是用包起来的,只需要把所有.path对象找出来,用正则表达式把$(...)替换成就好。

  总的来说,熟悉CSS的人写JQuery还是很快的。看一个简单的教程,再浏览一下JQuery的文档,个把小时,就能把JQuery学会了,而且还很好用。难怪这么多人喜欢!