天天看点

恶补web之八:jQuery(1)

    jquery是一个js库,极大的简化了js编程.jquery是一个写的更少,但做的更多的轻量级js库.

    jquery位于一个js文件中,其中包含了所有jquery函数,可以用如下标记把jquery添加到网页中:

<head>

<script src="jquery.js"></script>

</head>

    有2个版本的jquery可供下载,一个精简过的(production version),另一份是未压缩的(development version)供调试和阅读.都可以从jquery.com下载.

    如果不想在本地存放jquery库,可以从google或microsoft加载cdn jquery核心文件:

    jquery语法实例:

$(this).hide() 隐藏当前html元素,$("#test").hide()隐藏id="test"的元素;

$("p").hide() 隐藏所有<p>元素, $(".test").hide()隐藏所有class="test"元素

其中美元符号$定义jquery.

    为了防止在完全加载文档之前就运行jquery代码,可以将jquery代码放置在document ready函数中:

$(document).ready(function(){

....

});

    jquery选择器:

使用xpath来选择给定属性的元素:$("[href]") 选取所有带有href属性的元素,$("[href='x']")选取所有带有href值等于"#"的元素,$("[href$='.jpg']")选取所有href值以'.jpg'结尾的元素;

    css选择器可以用以改变html元素的css属性:

$("p").css("background-color","red)

    如果网页中含有多个页面,希望共享js代码便于dry或重构,可以吧jquery函数放到独立的.js文件中:

<script type="text/javascript" src="share.js"></script>

    jquery使用$作为jquery的简写方式,为了避免和其他js库冲突(prototype也是用$),可以使用noconflict方法来解决该问题. var jq = jquery.noconflict();

    当遵循如下原则时,代码更便于维护:

1.把所有jquery代码放置于事件处理函数中

2.把所有事件处理函数放置于文档就绪事件处理器中

3.把jquery代码放置于单独的js文件中

4.如果存在名称冲突,则重命名jquery库

    hide和show隐藏和显示节点

    toggle切换hide和show,显示被隐藏的元素,并隐藏已显示的元素;

    fadein用于淡入已隐藏的元素

    fadeout用于淡出可见元素

    fadetoggle和toggle类似

    fadeto方法允许渐变为给定的不透明度

    slidedown和slideup用于向下和向上滑动元素

    slidetoggle类似

    animate方法用于创建自定义动画

    stop用于停止动画或效果

    以上大部分方法都可以带一个callback函数,该函数将在当前动画100%完成之后执行;

    可以用链接(chaining)技术,允许我们在相同的元素上运行多条jquery命名,一条接着另一条,如果要链接一个动作,只需要简单地把该动作追加到之前的动作上.

继续阅读