qiangeyaoxuexi
2016-09-18 16:31
.data(key,value)和.attr(key,value)设置属性,是不是都能达到存储的效果,有什么区别吗
楼上说的对
上面那个人回答是不对的,不要误导了其他人啊。。。attr可以设置任意的属性值给元素,当然也可以设置一些本来就不存在的,比如.attr('fgf','呵呵'),之前我写前端要存储一些数据就是这样干的,那时候不知道.data方法,现在既然有了.data方法就不要用.attr和.prop了,马云说过专业的事交给专业的人去干。。。你从名字上就看出来了,.data是数据存储的,.attr是属性设置的。再说点其他的,之前我设置多选框选中问题时,发现设置多选框选中和不选中要用prop用attr是不行的。.prop和.attr是有区别的,我的理解是prop操作的是节点原生属性,attr操作'额外'属性。
.attr操作dom节点自带的属性,如一个<input/>节点本身具备type属性,用.attr可以改变其type,但你不能自己定义一个不存在的属性,也就是说.attr是不能达到任意存储数据的作用的。
.data的作用才是存储自定义键值对。
jQuery基础 (一)—样式篇
217509 学习 · 1218 问题
相似问题