首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

jQuery: attr() vs prop()

不巧面试被问到了attr()和prop()的区别,稍加学习记录如下: 1. attribute和property attribute 一个网页就是一棵DOM树,DOM树由节点构成,节点分为三种:元素节点...通过上节我们看到prop来自节点对象自带的,它包含了很多property;而attr来自对象的attributes,是我们在元素节点上添加属性节点才会有的。...3. prop()和attr()的区别?...property只能是true或者false(当勾选为true,未勾选或者未设置为false): elem.checked // true (Boolean) 会随着勾选状态而改变 jQuery的prop()方法是和上面直接取...()方法获的的结果也跟getAttribute是一致的: $(‘input[type=“checkbox”’).attr( ‘checked’ ) // 同上一条 至于说jQuery的历史版本中,attr

1.5K50

Attr、Style和Theme详解

Attr的定义 我们先举一个框架中的源码例子,用来介绍下Android中是如何定义一个Attr的,比如以下创建一个简单的TextView布局 其中layout_width对应到框架中的attr信息如下...wrap_content" android:layout_width="wrap_content"/> 移步到DogView的Java代码中,我们可以通过theme的obtainStyledAttributes方法来获得我们刚刚定义的几个...Attr的获得方法 有些情况下,我们可能需要使用theme中的属性值,比如下面我们想让一个TextView直接显示dogName这个属性的内容,并且使用系统字体的颜色,则可以如下做: 获得一个Attr方法,不同于普通资源使用@符号获得的方式,而是需要使用?符号来获得属性,整体的表达方式如下: ?...因为资源工具知道此处是一个属性,所以省去了attr (完整写法:?android:attr/textColorSecondary)。

1.9K90

jquery中dom元素的attr和prop方法的理解

一、背景   在编写使用高版本[ jQuery 1.6 开始新增了一个方法 prop()]的jquery插件进行编写js代码的时候,经常不知道dom元素的attr和prop方法到底有什么区别?...各自有什么应用场景,什么时候使用attr方法更合适?什么时候使用prop方法更加方便?今天我就结合自己平常的使用来谈谈这些问题以及我个人的理解。...也是W3C里本身就包含的几个属性,换句话说是IDE中能够自动提示的属性,这些属性就被称为dom元素的固有属性,这种情况下,我建议使用prop方法。   ...这些属性被称为dom元素的自定义属性,这种情况下,我建议使用attr方法。此时若使用prop方法进行设置和获取该属性的值时就会返回undefined值。   ...方法会出现下面的结果 $("#se").attr("checked") == 'undefined' $("#sel").attr("checked") == 'checked' $("#op").attr

1.2K20

jquery中attr()和prop()的区别

1、操作对象不同 很明显,attr和prop分别是单词attribute和property的缩写,并且它们均表示"属性"的意思。...2、应用版本不同 attr()是jQuery 1.0版本就有的函数,prop()是jQuery 1.6版本新增的函数。...毫无疑问,在1.6之前,你只能使用attr()函数;1.6及以后版本,你可以根据实际需要选择对应的函数。...3、用于设置的属性值类型不同 由于attr()函数操作的是文档节点的属性,因此设置的属性值只能是字符串类型,如果不是字符串类型,也会调用其toString()方法,将其转为字符串类型。.../ prop // attr ==> getAttribute() / setAttribute() // 用于操作 自定义的属性,对于DOM对象自身的布尔值类型的属性,只能 // 通过这个两个方法来设置或者读取默认值

1.9K20

js的attr用于设置属性值

$("#collapseExample").attr("display","none"); collapseExample 可能是 Bootstrap 框架中的一个折叠元素(Collapse),当点击某个触发器时...使用 attr() 方法修改 CSS 样式不生效是因为该方法主要用于设置元素的属性值,而非样式。虽然某些属性值可能会影响元素的呈现效果,但这并不是它们的本意和正确用法。...在 jQuery 中,如果需要修改样式,应该使用 .css() 方法。...该方法可以通过接受一个样式属性名和值的键值对来直接修改元素的样式,例如: $("#collapseExample").css("display", "none"); 此外,还可以同时设置多个样式属性,甚至动态地计算样式的值...总之,使用 .css() 方法是修改元素样式的正确和推荐方式,而不是使用 attr() 方法

42430
领券