JQuery 初体验(建议学习jquery)_jquery
程序员文章站
2022-04-24 08:05:02
...
在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 });
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 });
21 $(".path").each(function() {
22 var content = $(this).html();
23 content = content.replace(/(\$\(.*?\))/, "$1")
24 $(this).html(content);
25 });
还好我所有路径都是用包起来的,只需要把所有.path对象找出来,用正则表达式把$(...)替换成就好。
总的来说,熟悉CSS的人写JQuery还是很快的。看一个简单的教程,再浏览一下JQuery的文档,个把小时,就能把JQuery学会了,而且还很好用。难怪这么多人喜欢!
推荐阅读
-
jQuery下的动画处理总结_jquery
-
jQuery复合事件结合toggle()方法的用法示例
-
jquery append()方法与html()方法的区别及使用介绍_jquery
-
jquery如何使用undelegate去掉用delegate为动态创建元素绑定的事件?
-
基于jquery的一个浮动框(扩展性比较好 )_jquery
-
jQuery在vs2008及js文件中的无智能提示的解决方法_jquery
-
PHP+Jquery与ajax相结合实现下拉淡出瀑布流效果【无需插件】
-
JQuery 操作/获取table具体代码_jquery
-
jQuery 如何实现一个滑动按钮开关
-
jquery放大镜效果超漂亮噢_jquery