一、背景 在编写使用高版本[ jQuery 1.6 开始新增了一个方法 prop()]的jquery插件进行编写js代码的时候,经常不知道dom元素的attr和prop方法到底有什么区别?....那么很明显前两个是该dom元素的固有属性,最后一个是我们自己定义的属性。...a标签中的固有属性中并不包含该属性。这些属性被称为dom元素的自定义属性,这种情况下,我建议使用attr方法。此时若使用prop方法进行设置和获取该属性的值时就会返回undefined值。 ...、radio、select等元素的选中属性"checked"和"selected",这些属性也是dom元素的固有属性,因此使用prop方法才能正确的进行获取和设置。...(),其他的使用 attr()。
其中的一些代码段是从jQuery1.4.2才开始支持的做法,另一些则是真正有用的函数或方法,他们能够帮助你又快又好地把事情完成。...jQuery就不需要花费更多的时间来搜索 //你想要的元素。...$('#keks').html()) { //什么都没有找到; } // 方法二 if ($('#keks').is(":empty")) { //什么都没有找到; } 如何从一个未排序的集合中找出某个元素的索引号...; // 定制选择器的用法: $('.someClasses:test').doSomething(); 如何检查某个元素是否存在 if ($('#someDiv').length) { //万岁...); 如何检查图像是否已经被完全加载进来 $('#theImage').attr('src', 'image.jpg').load(function() { alert('This Image
如何从一个未排序的集合中找出某个元素的索引号 $("ul > li").click(function () { var index = $(this).prevAll().length; });...如何为任何与选择器相匹配的元素设置事件处理程序: $('button.someClass').live('click', someFunction); //注意,在jQuery 1.4.2中,delegate...在jQuery中如何测试某个元素是否可见 if($(element).is(':visible') == 'true') { //该元素是可见的 } 16....如何把整个的列表元素(List Element,LI)变成可点击的 $("ul li").click(function(){ window.location=$(this).find("a").attr...如何检查图像是否已经被完全加载进来 $('#theImage').attr('src', 'image.jpg').load(function() { alert('This Image Has Been
.css(“样式名”,“值”); 批量修改元素样式 元素对象.css({“样式名1”:“值”,“样式名2”:“值”}); 获取和修改元素的属性 获取元素属性 元素对象.attr(“属性名”); 修改元素属性.../js/jquery-1.4.2.js" type="text/javascript" charset="utf-8"> jquery-1.4.2.js" type="text/javascript" charset="utf-8"> attr("checked")); }) ---- 引入了jquery-1.4.2.js文件可以从网上下...,或者从我这里下,无需积分免费下载:jquery-1.4.2.js
所做出的任何更改,都是可以实时反映到元素data属性上的。 但是这种方法比较低端,如果遇到多个data-*自定义字段,想要一次全部获取所有的data属性并包装成对象的话,还必须做一个循环,很麻烦。...所做出的任何更改,都是可以实时反映到元素data属性上的。..."data-en","Beijing Stuffed Duck"); })(window.jQuery); 这与jQuery.attr运用在其他属性上时的情况完全一样,并且所做出的任何更改,都是可以实时反映到元素...利用 jQuery.data 方法存取 dataset jQuery从1.4.2版本开始支持$.data()方法来直接访问data属性,同时也不需要写"data-"关键词了,例如,对于上面的例子,可以运行...,但是需要注意,jQuery.data对data数据做出的更改,不会反映到HTML元素data属性上。
jquery中用attr()方法来获取和设置元素属性,attr是attribute(属性)的缩写,在jQuery DOM操作中会经常用到attr(),attr()有4个表达式。...1. attr(属性名) //获取属性的值(取得第一个匹配元素的属性值。通过这个方法可以方便地从第一个匹配元素中获取一个属性的值。...如果元素没有相应属性,则返回 undefined ) 2. attr(属性名, 属性值) //设置属性的值 (为所有匹配的元素设置一个属性值。)...中attr()方法 jquery-1.4.2.min.js" language="javascript" type="text/javascript" >...jquery中val()与之类似,(this).val();获取某个元素节点的value值,相当于(this).attr("value");(this).val(value);设置某个元素节点的value
前段时间我就主导了这件事情,把公司里我们组负责的项目jQuery版本从1.4.2升级到了jQuery 1.11.3。jQuery官方也为类似升级工作提供了jQuery Migrate插件。...,当时还是采用的jQuery 1.4.2,这次升级步子迈得算是比较大。...但是如果在你调用on函数的时候,前面的$(selector)在当前的网页上根本不匹配任何元素(该元素可能是后面的代码才加到DOM里的),那是不会绑定成功的。...deprecated 早期jQuery中名字叫toggle的函数有两个,一个是用于控制元素的显示和隐藏,这个用途的函数目前jQuery中依旧存在;另一个就是上面提到的被废弃的toggle函数,它用于绑定至少两个函数到同一个元素...那到底什么时候使用attr方法呢?两者的区别是:prop设置的是某元素固有的属性,而attr设置的是写在html标签上的自定义属性。
说明:公司一个项目使用的ASP.NET MVC 1.0,jQuery版本是visual studio创建项目时自带的版本。1.4.2。...然后项目中使用到一个拖拽功能,以前开发的同事估计也只找到了基于jQuery 1.4.2的第三方类库,我没有具体去分析这个拖拽插件。...第二个如何去指定的内容div显示。$(this)就是表明当前点击的哪个元素,所以此时就是当前点击的哪个a标签。$(this).parent()就是当前点击a标签的父级元素。...f=jquery_dom_element_methods_index 获得第一个匹配元素相对于同胞元素的index位置,从0开始计数。在这里就反映为当前点击a的父级li元素在三个li的中的位置。...,eq(1)表明从0开始计算,为1的元素被选中。
下载地址:http://jquery.com/download/ 同一版本分类 jQuery每一个版本又分为压缩版和未压缩版: jquery.js:未压缩版本(开发版本),代码可读性高,推荐在开发和学习阶段使用...jQuery3.0多出来一个精简版(Slim) 精简版就是剔除了ajax模块和effects模块,精简版的文件比为未精简版要小很多,压缩和未压缩跟上面的区别一样。...jQuery.Slim.js:未压缩精简版 jQuery.Slim.min.js:压缩精简版 ?...]") 选取所有该p标签且具有attr属性的节点 $("p[attr=a_value]") 选取所有p标签且具有attr属性并满足属性值为a_value的节点 $("p[attr^=a_value_head...") 检查当前的元素是否含有某个特定的类,如果有,则返回true。
那么jQuery到底是如何实现的呢? 下面,我们来看看jQuery.attr和jQuery.prop的源码。...} else { if(length) { // 如果元素集合长度不为零,则返回第一个元素的属性值 return fn(elems[0], key); // jQuery.attr(elems...在jQuery.attr和jQuery.prop里面,就是利用access来遍历元素集合并对其实现对attribute和property的控制。...这些都是题外话了,现在回到$().attr和$().prop的实现。总的说,这两个原型方法都利用access对元素集进行变量,并对每个元素调用jQuery.prop和jQuery.attr方法。...要注意,这里的jQuery.prop和jQuery.attr并不是原型链上的方法,而是jQuery这个对象本身的方法,它是使用jQuery.extend进行方法扩展的(jQuery.fn.prop和jQuery.fn.attr
下载地址:http://jquery.com/download/ 同一版本分类 jQuery每一个版本又分为压缩版和未压缩版: jquery.js:未压缩版本(开发版本),代码可读性高,推荐在开发和学习阶段使用...jQuery3.0多出来一个精简版(Slim) 精简版就是剔除了ajax模块和effects模块,精简版的文件比为未精简版要小很多,压缩和未压缩跟上面的区别一样。...jQuery.Slim.js:未压缩精简版 jQuery.Slim.min.js:压缩精简版 image.png 1.4 jQuery的安装 官网下载地址:http://jquery.com/...]") 选取所有该p标签且具有attr属性的节点 $("p[attr=a_value]") 选取所有p标签且具有attr属性并满足属性值为a_value的节点 $("p[attr^=a_value_head...") 检查当前的元素是否含有某个特定的类,如果有,则返回true。
本文我们将为jQuery用户分享8个超实用的技巧攻略。jQuery是JavaScript最好的库之一,主要用于制作动画、事件处理,支持Ajax及HTML 脚本客户端。...('target','_blank'); }); 4)更改样式列表 使用这段代码帮助你更改样式列表。...Position = " + e.pageX + " and Y Axis Position = " + e.pageY); }); }); 8)缩放图片 虽然图片应该在服务器端缩放,不过如果服务器端未做缩放...; } return true; }); 11、均衡元素的高度 使用纯 CSS代码实现均衡元素的高度比较困难,而下面这段 jQuery 代码会根据最高的元素来均衡所有的 Div 元素...=$(this).find("a").attr("href"); return false; });
-- Create an anchor tag --> Back to top 改变scrollTop 的值可以更改你想要放置滚动条的位置。...', 'img/hover-off.png'); 3、检查图像是否加载 有时为了继续脚本,你可能需要检查图像是否全部加载完毕: $('img').load(function () { console.log...('image load successful'); }); 你也可以用ID或类替换标签来检查某个特定的图像是否被加载。...修复的时候要小心这个问题。 12、通过文本查找元素 通过使用jQuery中的contains() 选择器,你可以找到元素内容的文本。...15、链式插件调用 jQuery允许“链式”插件的方法调用,以减轻反复查询DOM并创建多个jQuery对象的过程。
如同在jQuery中一样,它是选择元素节点最重要的方法,但是在jQuery中选择器建立在CSS选择器标准库上。...属性操作(atrributes) 用来获取和更改属性的方法: .attr(name, value) 这个方法用来获取和设置属性。获取第一个符合匹配的元素的属性值。...你也可以把map和function作为参数传递进去,就像在jQuery中一样 $('ul').attr('id') //=> fruits $('.apple').attr('id', 'favorite...) 检查元素是否含有此类名 $('.pear').hasClass('pear') //=> true $('apple').hasClass('fruit') //=> false $('li')...() 获取元素集合第一个元素的父元素 $('.pear').parent().attr('id') //=> fruits .next() 选择当前元素的下一个兄弟元素 $('.apple').next
这里是三条最常见的jQuery选择语句: $('.elem') $('.elem', context) context.find('.elem') 我们用1.4.2、1.4.4、1.6.2...其他语句的测试,比如.attr("value")和.val(),也是新版本的jQuery表现好于老版本。 2. 用对选择器 在jquery中,你可以用多种选择器,选择同一个网页元素。...请看下面的例子,为a元素绑定一个处理点击事件的函数: $('a').click(function(){ alert($(this).attr('id')); }); 这段代码的意思是...为了获取这个属性,必须连续两次调用jQuery,第一次是$(this),第二次是attr('id')。 事实上,这种处理完全不必要。...的速度比$(this).attr('id')快了20多倍。
这里是三条最常见的jQuery选择语句: $('.elem') $('.elem', context) context.find('.elem') 我们用1.4.2、1.4.4、1.6.2三个版本的jQuery...可以看到,1.6.2版本的运行次数,远远超过两个老版本。尤其是第一条语句,性能有数倍的提高。 其他语句的测试,比如.attr("value")和.val(),也是新版本的jQuery表现好于老版本。...请看下面的例子,为a元素绑定一个处理点击事件的函数: $('a').click(function(){ alert($(this).attr('id')); }); 这段代码的意思是,点击a元素后,弹出该元素的...为了获取这个属性,必须连续两次调用jQuery,第一次是$(this),第二次是attr('id')。 事实上,这种处理完全不必要。...this).attr('id')快了20多倍。
,JavaScript 的数组的大小可以更改,里面也可以存储很多类型 var arr = [1, 2, 'haha', false]; 再来看新增,数组下标为 - 1 时的值也可以更改,也可以不按照下标顺序新增...new 对象 还可以通过 this 去修改一些属性的值 3. jQuery jQuery 语法是通过选取 HTML 元素, 并对选取的元素执⾏某些操作 基础语法:$(selector).action(...) $( ) 是 jQuery 提供的⼀个全局函数, ⽤于选择和操作 HTML 元素 Selector 选择器, ⽤来"查询"和"查找" HTML 元素 action 操作, 执⾏对元素的操作 的代码通常都写在 document ready 函数中 ,这样可以保证在文档加载完之后才能对页面进行操作 JQuery⽅法 说明 text() 设置或返回所选元素的⽂本内容 html() 设置或返回所选元素的内容...是获取或者设置表单字段的值,同理,如果有参数就表示设置值,没有参数就表示获取值 attr () 还可以通过 attr () 方法来获取或者设置属性值 通过 css() 方法获取样式 获取 CSS
来代替,相当于原生js中的window 1.1.3 jQuery 对象和 DOM 对象 用原生 JS 获取来的对象是 DOM 对象 jQuery 方法获取的元素是 jQuery 对象。...”) 检查当前的元素是否含有某个特定的类,如果有,则返回true eq(index) $(“li”).eq(2); 相当于$(“li:eq(2)” ) ,index从0开始 2.2 基础知识 2.2.1...,第二个是鼠标移出时触发的函数 只写一个参数时,鼠标移入移出都会触发它 4.1 jQuery属性操作 4.1.1 元素固有属性值 prop() 获取元素本身自带的属性,有利于对表单操作 表单属性...:disabled checked这类属性操作很顺畅 //获取 prop('属性名'); //更改 prop('属性名','属性值'); 4.1.2 元素自定义属性值 attr() //获取 attr...('属性名'); //更改 attr('属性名','属性值'); 4.1.3 数据缓存 data() 可以在指定的元素上存取数据,但不会修改DOM元素结构。
:prop() / attr() / data() ; 1.1.1 元素固有属性值 prop() 所谓元素固有属性就是元素本身自带的属性,比如 元素里面的 href ,比如 元素里面的 type。...1.1.2 元素自定义属性值 attr() 用户自己给元素添加的属性,我们称为自定义属性。 比如给 div 添加 index =“1”。 语法 ? ...元素的自定义属性 我们通过 attr() console.log($("div").attr("index")); $("div").attr("index...(详情参考源代码) 1.3. jQuery 元素操作 jQuery 元素操作主要讲的是用jQuery方法,操作标签的遍历、创建、添加、删除等操作。 1.3.1....1.4.2. jQuery 位置操作 jQuery的位置操作主要有三个: offset()、position()、scrollTop()/scrollLeft() , 具体介绍如下: 语法 ?
: 18}; 7 在jQuery中,prop()函数的设计目标是用于设置或获取指定DOM元素(指的是JS对象,Element类型)上的属性(property);attr()函数的设计目标是用于设置或获取指定...例如:在jQuery 1.6之前,attr()也可以设置或获取tagName、className、nodeName、nodeType等DOM元素的property。...此外,对于表单元素的checked、selected、disabled等属性,在jQuery 1.6之前,attr()获取这些属性的返回值为Boolean类型:如果被选中(或禁用)就返回true,否则返回...并且,在某些版本中,这些属性值表示文档加载时的初始状态值,即使之后更改了这些元素的选中(或禁用)状态,对应的属性值也不会发生改变。...("linkType").outerHTML; 如果用jQuery如何获取匹配元素(包括自身元素的html)呢?
领取专属 10元无门槛券
手把手带您无忧上云