:input 匹配的是 <input>,<textarea>,<select>,<button> :button 匹配 input[type=button|reset|submit]和button :file 即 input[type=file],同理还有 :checkbox,:radio :checked 勾上的单复选框 :disabled 和 :enabled 能和不能点击或输入的表单元素 :focus 匹配当前焦点元素 :checkbox:checked:disabled 匹配的是不能点击的已选中的复选框
prop() 方法用来改变影响DOM元素的动态状态,而不是改变HTML属性。好比: disabled、checked
参数是布尔值,表明是否复制事件,默认false。 $('.item').on('click', function(){}); $('.item').clone(true).appendTo('.list'); // 克隆 .item(包括事件)并添加到 .list
设置或者返回表单元素(input、select、textarea)的值
<div id="app">hello jquery world.</div> var $e = $("div").replaceWith("<p>你好,jquery</p>"); 返回的是 div#app 的 jQuery 对象,但已从 dom 树中移除,页面呈现的是p。 而 $("<p>你好,jquery</p>").replaceAll("#app") 返回的是 p 的jQuery对象。
设置或者获取匹配元素的宽度和高度值,返回的是number(不带单位),而$(selector).css('width')返回的是string(带有单位)
获取匹配的第一个元素相对于 document 的位置 返回:{left: Number, top: Number} 设置:若是元素没有定位(即 position: static),将会修改成 relative 注意:jQuery不支持获取隐藏元素的偏移坐标。一样的,也没法取得隐藏元素的 border, margin, 或 padding 信息。 若元素的属性设置的是 visibility:hidden,那么咱们依然能够取得它的坐标。可是若设置的属性是 display:none,因为在绘制 DOM 树时根本就不绘制该元素,因此它的位置属性值是 undefined。
获取匹配的第一个元素相对于其最近的具备定位(即position不是static)的父元素的位置 返回 {left: Number, top: Number} 不能设置。 注意:jQuery不支持获取隐藏元素的偏移坐标及所占用的边框,边距和填充的大小
获取或者设置匹配的第一个元素水平和垂直方向的位置,数值类型 垂直滚动条位置 是可滚动区域 在 可视区域上方的 被隐藏区域的高度。 若是滚动条在最上方没有滚动 或者 当前元素没有出现滚动条,那么这个距离为0 回顶部代码 $('html,body').scrollTop(0);兼容IE 和 Chrome,瞬间回到顶部。
bind()在1.7之后被on()取代,绑定多个事件:$(selector).on('dblclick contextment', function(){}); on()也兼容zepto。可是这两种方法的缺点是要绑定的元素必须存在文档中。语法: $(selector).on('events'[, 'selector'][, data], handler); 其中第一个参数能够是标准事件名,也能够是自定义事件(经过trigger触发),第二和第三个参数能够省略,第二个参数为匹配元素的后代元素,第三个参数为传递给处理函数的数据,即在函数中经过 event.data 来接收。 delegate() 支持对动态建立的元素有效。语法:$('div').delegate('p', 'mousemove', function(){}); 为div下面的p(包括将来产生的)绑定mousemove事件。
不传参数就解绑匹配元素的全部事件,不然就解绑指定参数的事件。 $(selector).off('click', '**'); 解绑全部代理的click事件,而元素自己的事件不会被解绑。
简单触发:$(selector).click(); trigger()触发事件,触发浏览器行为。$(selector).trigger("click"); triggerHandler()触发事件响应方法,不触发浏览器行为。$(selector).triggerHandler("focus");
event.data 传递给事件处理程序的额外数据 event.currentTarget 等同于this,指当前DOM对象 event.target 触发事件源,不必定是等同this(一般在事件委托中出现) event.type 事件类型 event.which 鼠标的按键类型:左1 中2 右3 或者键盘码 event.keyCode 键盘码 event.pageX 鼠标相对于文档左部边缘的位置
一般第一个参数为速度(fase、normal、slow、ms),第二个参数为一个函数,动画完成后执行。css
动画的中止与延时 stop()、delay()html
$.ajax({ beforeSend(){} // 发送请求以前调用的匿名函数,若是 return false; 就表明阻止该次请求,能够用于验证用户输入的数据 })
原理: return this; 一般只有设置操做才能够链式操做,获取操做时返回相应的值,没法返回this。 end() 结束当前链最近的一次过滤操做,而且返回匹配元素以前的状态。
jQuery占用了$ 和jQuery这两个变量,若是同一个页面引用了jQuery库,还引用了其余库或者其余版本的jQuery也用的了$或jQuery这个变量,为了保证每一个库都能正常使用,就须要让jQuery交出变量的控制权。 $.noConflict(); 交出$ $.noConflict(true); 交出$ 和 jQuery <script src="https://cdn.bootcss.com/jquery/2.2.4/jquery.min.js"></script> <script src="https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script> <script> // 查看版本 console.log($.fn.jquery); // 3.2.1 console.log(jQuery.fn.jquery); // 3.2.1 </script> <script src="https://cdn.bootcss.com/jquery/2.2.4/jquery.min.js"></script> <script src="https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script> <script> $.noConflict(); console.log($.fn.jquery); // 2.2.4 console.log(jQuery.fn.jquery); // 3.2.1 </script> <script src="https://cdn.bootcss.com/jquery/2.2.4/jquery.min.js"></script> <script src="https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script> <script> $.noConflict(true); console.log($.fn.jquery); // 2.2.4 console.log(jQuery.fn.jquery); // 2.2.4 </script>