JQuery 笔记
来源:互联网 发布:linux高级运维面试题 编辑:程序博客网 时间:2024/06/03 20:51
JQurey复习笔记
常用选择器
- $("#id") 通过id选择 - $(".class") 通过类选择 - $("element") 通过元素选择 - $(":firet") 选择第一个元素 - $(":last") 选择最后一个元素 - $(":even") 选择偶数元素,常用于表格中的tr选择 - $(":odd") 选择奇数元素,常用于表格中的tr选择 - $("[attribute]") 选择 带有attribute属性 的元素 - $("[attribute==value]") 选择带有attribute属性且 等于value 的元素 - $("[attribute!=value]") 选择带有 attribute 属性且不等于value的元素 - \$("[attribute\$==value]") 选择带有attribute属性且 属性值以value结尾 的元素 - $(":input") 选择所有 input 元素 - \$(":text")、\$(":password")、\$(":radio")、\$(":checkbox")、\$(":submit")、\$(":button")等,所有type等于对应属性的 input 元素
常用事件
- bind() 为选中元素绑定事件,可以同时绑定多个事件 - 语法:$(selector).bind(event,data,function) - 绑定多个事件:$(selector).bind({event:function, event:function, ...}) - unbind() 移除被选元素的绑定事件 - live() 为选中元素绑定事件,可以同时绑定多个事件 - delegate() 为选中元素绑定事件,可以同时绑定多个事件 - on() 在被选元素及子元素上添加一个或多个事件,同样可以绑定多个事件 (*推荐*) -例
<!-- html --> <ul> <li>111</li> <li>222</li> <li>333</li> </ul><!-- js --> $(function () { $('ul').on('click','li',function(){ //事件委托 点击ul中的每个li都会在后面动态生成一个li var newLi = document.createElement('li') newLi.innerHTML = 'after 动态添加'; $(this).after(newLi);})
- 语法: $(selector).on(event,childSelector,data,function) - 与bind方法不同之处: on()可以在用js生成新的子元素的时候,同样给新生成的子元素绑定方法,即事件委托;而bind()不能给未来新增的元素绑定事件 - off() 移除用on()绑定的事件 - click() 单击 - dblclick() 双击 - focus() 被选中元素获得焦点时,会触发事件 - keydown() 当键盘或按钮被按下时,发生 keydown 事件 - keypress() 与 keydown 事件不同,每插入一个字符,就会发生 keypress 事件 - keyup() 当按钮被松开时,发生 keyup 事件 - mousedown() - mouseenter() 只有在鼠标指针穿过被选元素时,才会触发事件 - mouseleave() 只有在鼠标指针离开被选元素时,才会触发事件 - mousemove() - mouseout()如果鼠标指针离开任何子元素,同样会触发事件 - mouseover() 不论鼠标指针穿过被选元素或其子元素,都会触发 mouseover 事件 - mouseup()
常用基础DOM 和 CSS操作
- html() 返回一个HTML字符串,如果选择器匹配多于一个的元素,那么只有第一个匹配元素的 HTML 内容会被获取 - html(val) 替换html内容为val,有html元素会自动解析 - text() 取得所有匹配元素的内容,并返回由所有匹配元素包含的文本内容组合起来的文本(html元素会自动被清理掉) - text(val) 替换text内容为val,有html元素会自动转义 - val() 获取表单中的文本内容 - val(value) 替换表单中的文本内容为value,当参数是 数组时,即为设定一个select和一个多选的select的值 - attr() 设置或返回被选元素的属性值 -参数可以是一个属性名 | 作为属性的“名/值对”对象 | 属性名称,函数(第一个参数为当前元素的索引值,第二个参数为原先的属性值) - removeAttr() 从每一个匹配的元素中删除一个属性 - css() 访问匹配元素的样式属性 -参数可以是一个要访问的属性名称 | 一个或多个CSS属性组成的一个数组 | 要设置为样式属性的名/值对 - addClass() 为每个匹配的元素添加指定的类名,多个类名请用空格分开 - rmmoveClass() 从所有匹配的元素中删除全部或者指定的类,多个类名请用空格分开 - width() 直接取得第一个匹配元素当前计算的宽度值(px)的数值 - height() - innerWidth() 获取第一个匹配元素内部区域宽度(包括padding、不包括边框) - innerHeight() - outerWidth() 获取第一个匹配元素外部高度(默认包括补白和边框);参数设为true时,计算边距(margin)在内 - outerHeight() - offset() 相对于视口的偏移 - position() 相对于父元素的偏移
常用工具函数
- $.each(对象数组, function(index索引,val属性值){}) 遍历js原生态对象数组 - $().each(function(index索引,elementDOM元素){}) 遍历JQuery对象的数组 - $.map(arr|obj,function(element,index){}) 回调函数会被每个数组元素调用 - $.grep(array, function(element,index){}, [invert]) 过滤数组,invert为false,返回true的元素,否则返回false的元素 - $.inArray(value,array,[fromIndex]) 确定第一个参数在数组中的位置,从0开始计数(如果没有找到则返回 -1 ) - $.merge(first,second) 合并两个数组 - $.isFunction(obj) - $.isEmptyObject(obj) - $.contains(container,contained) 判断一个DOM节点是否包含另一个DOM节点 - $.proxy(function,context) 改变函数作用域(改变 this 指向) - function:将要被改变作用域的函数 - context:一个object,那个函数的作用域会被设置到这个object上
事件属性
- event.target 返回触发事件的DOM元素 - event.type 返回触发的事件类型 - event.currentTarget:事件绑定的元素 - event.which 返回发生的键盘和鼠标事件的keycode - event.stopPropagation() 防止事件冒泡到DOM树上,也就是不触发的任何前辈元素上的事件处理函数 - event.preventDefault() 阻止默认事件行为的触发
<!-- 例:阻止表单提交 --> $('form').submit(function(){ e.preventDefault(); // return false //同时阻止冒泡和默认事件})
常用DOM节点操作
- append() 向每个匹配的元素内部追加内容 - appendTo() 与上面相反 - prepend() 向每个匹配的元素内部前置内容 - prependTo() 与上面相反 - after() 在每个匹配的元素之后插入内容,可以直接插入DOM元素或者字符串(html元素可以解析) - before() 在每个匹配的元素之前插入内容,可以直接插入DOM元素或者字符串(html元素可以解析)
常用动画操作
- show([speed,[easing],[fn]]) 显示隐藏的匹配元素,必须用在隐藏元素上 - speed:三种预定速度之一的字符串("slow","normal", or "fast")或表示动画时长的毫秒数值(如:1000) - easing:(Optional) 指定切换效果,默认是"swing",可用参数"linear" - fn:在动画完成时执行的函数,每个元素执行一次。 - hide([speed,[easing],[fn]]) 与上面相反 - toggle([speed],[easing],[fn]) 如果元素是可见的,切换为隐藏的;如果元素是隐藏的,切换为可见的 - slideDown([speed],[easing],[fn]) 通过高度变化(向下增大)来动态地显示所有匹配的元素,在显示完成后可选地触发一个回调函数,动画效果只调整元素的高度,可以使匹配的元素以“滑动”的方式显示出来 - slideUp([speed,[easing],[fn]]) 与上面相反 - slideToggle([speed],[easing],[fn]) -fadeIn([speed],[easing],[fn]) 通过不透明度的变化来实现所有匹配元素的淡入效果,并在动画完成后可选地触发一个回调函数,这个动画只调整元素的不透明度 - fadeOut([speed],[easing],[fn]) - fadeToggle([speed,[easing],[fn]])- animate(params,[speed],[easing],[fn]) 创建自定义动画- stop([clearQueue],[jumpToEnd]) 停止所有在指定元素上正在运行的动画- delay(duration,[queueName]) 设置一个延时来推迟执行队列中之后的项目,既可以推迟动画队列的执行,也可以用于自定义队列
<!-- html --> <p style="display: none;">我先slideDown下来,然后再淡入</p><!-- js --> $('p').slideDown(600).delay(1500).fadeOut(400);
- finish([queue]) 停止当前正在运行的动画,删除所有排队的动画,并完成匹配元素所有的动画
持续更新..
阅读全文
0 0
- JQuery 笔记:
- jquery笔记
- jquery笔记
- JQuery 笔记
- JQuery笔记
- JQuery笔记
- JQuery笔记
- jquery 笔记
- jquery 笔记
- jquery笔记
- jquery+笔记
- JQuery笔记
- jquery笔记
- jquery笔记
- JQuery 笔记
- Jquery 笔记
- jQuery笔记
- JQuery笔记
- Java并发编程:volatile关键字解析
- 使用call_usermodehelper在Linux内核中直接运行用户空间程序
- 合唱团问题
- C# 读写byte[]文件
- 我的Python学习笔记(5) ArcGIS API for Python
- JQuery 笔记
- DTCoreText html解析处理分析(1)
- 进制数
- 将博客搬至CSDN
- Qt资料大全
- apache 安装
- 两个类名一样的select下拉框 如何让他们不能选择同样的值??
- C#中抽象类和接口的简单理解
- File is not a normal file.