jQuery语法和常用函数总结

2017-01-20  本文已影响0人  JacobMa1996

jQ对象是对DOM对象进行包装后产生的对象,DOM对象和jQ对象中的方法和属性不可互用
jQuery对象与DOM对象可相互转换,因此,可约定好定义变量的风格;
var $variable = jQ对象;
var variable = DOM对象;
相互转换:

//jQ对象转DOM对象
var variable = $variable[0];//数组方法
var variable = $variable.get(0);//jQuery中的get(index)方法
//DOM对象转jQ对象
var $variable = $(variable);

$()函数就是一个jQuery对象的制造工厂

jQ选择器

e.q. $(".side-nav>ul")

jQ DOM操作

DOM Core并不专属于JavaScript,任何一种支持DOM的程序设计语言都可以使用它。——《锋利的jQuery》

DOM Core
getElementById();getElementsByTagName();getAttribute();setAttribute();
HTML-DOM(出现比DOM Core还要早)
document.forms;element.src;
CSS DOM
element.style.color = "red";

jQ 事件

事件冒泡:嵌套元素中都绑定了事件,事件触发从最里层至最外层
event.stopPropagation()//阻止事件冒泡
event.preventDefault()//阻止事件默认行为
event.target//触发事件的元素

var message = "text";
    $("button").bind("click dbclick",{msg:message},function(event){//event:事件对象
        $(this).show();//将事件主体DOM元素转换为jQ对象
        alert(event.data.msg)})//data参数可选(一般不用
//可绑定多个事件
$(function(){
        $("button").bind("mouseover",function(){
            $(this).next().show();  
        }).bind("mouseout",function(){
            $(this).next().hide();
        })
    })```
`one()函数同bind()相同,但只触发一次`
3.移除事件
unbind();
`//无参则删除所有绑定事件`
`//带一个参数则删除指定绑定事件`
`//两个参数则删除指定绑定事件的指定函数`
4.切换事件
1.hover(over,out);

$("a").hover(function(){
//code1
},function(){
//code2
})
//同mouseenter和mouseleave是等价的

2.toggle(fn,fn2,fn3,[...])
`//多个函数依次调用,一般用于2种状态切换`
5.模拟操作
trigger();
`$(#btn).trigger("click")//模拟单击操作`
6.自定义事件
###jQ动画
- show();hide();toggle()
`show()将display为none的元素设置为display样式为先前的显示状态(如block或inline)`
`hide()将display设置为none`
`参数为时间,show()和hide()同时改变元素的高度,宽度,不透明度`
- fadeIn();fadeOut;
`//只改变不透明度,直至display为none或先前状态`
- slideUp();slideDown();slideToggle();
`//只改变高度,直至display为none或先前状态`
- animate(params,[duration],[easing],[callback])

$("#btn").click(function(){
$(this).animate({left:"400px",height:"200px",opacity:"1"},3000)
.animate({top:"200px",width:"200px"},3000.function(){
$(this.css("border","5px solid blue"));
})
})
//综合动画,最后一步改变css样式:通过回调函数(否则动画刚开始就会改变css样式)

- stop();delay()
`//太多了,自己翻书吧`
上一篇 下一篇

猜你喜欢

热点阅读