首先我要问一下你的jquery版本是多少?如果是jquery18以后的话,jquery的attr方法已经用prop方法替代了,prop方法的用法和attr完全一样,jquery18以后的attr方法会出现你说的问题。你把attr改成prop试一下
上一个实例……这种畸形需求……条件太苛刻
建议根据属性值猜一个属性名,毕竟属性名是有限的,而且是有规律的
推荐方法如:$([class="属性值"], [id="属性值"], [title="属性值"])
如果是 data 数据,也可以进行遍历,或者转换成文本进行检索
JSONstringify($('#blog_nav_rss')data())match(/"([\w-]+)":"[^"]检索的内容[^"]"/g)
如果把网页文档转换成文本进行全文检索,效率低下,效果不好。$('body')html()match(/([\w-]+)="[^"]检索的内容[^"]"/g)
分为以下2种情况:
1如果css写成行内样式,可以通过获取style属性的值来判断,示例如下:
判断id为divid的div元素是否有font-size样式:
2如果css写成类样式,可以通过获取class属性的值来判断,示例如下:
判断id为divid的div元素是否含有类样式divclass:
描述: 为每个匹配的元素添加指定的样式类名
$('div')addClass('className');//为所有div添加名为className的class1
removeClass
描述: 移除集合中每个匹配元素上一个,多个或全部样式。
$('div')removeClass('className');//将所有div上名为className的class移除1
toggleClass
描述: 在匹配的元素集合中的每个元素上添加或删除一个或多个样式类,取决于这个样式类是否存在或值切换属性。即:如果存在(不存在)就删除(添加)一个类。
$('div')toggleClass('className');//如果div上有这个class就删除,没有就添加。
在JQuery编码中,我们会判断元素是否存在某个属性比如是否包含 class="new" 的样式呢JQuery判断就非常简单了,因为有 hasClass这个方法 $("input[name=new]")hasClass("new") 即可判断
但是有时候我们需要判断别的属性,比如有的 a 链接包含 rel 属性,有的没有rel属性这时该怎么判断呢
这时就没有现成的方法了 如果存在某个属性 $("#aid")attr("rel") 会返回 rel的值,如果不存在 rel属性则会返回"undefined"
undefined 就是 undefined类型 , if($("#aid")attr("rel")=="undefined") 这个判断可能不成立
因为类型不相同
建议使用 if(typeof($("#aid")attr("rel"))=="undefined") 即可
首先,要用jquery获取到这个元素,用attr方法可以输出这个元素的标签属性。例如:
<div id='id1' class='class2'></div>
$('#id1') 获取到这个元素,有很多种获取元素方法,可参考jquery的文档。
$('#id1')attr('id'),就是获取到ID
$('#id1')attr('class'),就是获取到整个的class样式,多个样式可以自行用空格split一下。
以上就是关于jq获取动态元素属性全部的内容,包括:jq获取动态元素属性、jquery怎么根据属性值获取元素、jquery怎么获取下一个具有指定样式(class)的元素呢等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)