关于获取HTML元素属性的prop()和attr()的区别

关于获取HTML元素属性的prop()和attr()的区别,第1张

一、对于HTML元素本身就带有的固有属性,在处理时,使用prop方法。

二、对于HTML元素我们自己自定义的DOM属性,在处理时,使用attr方法。

<a href="http://www.baidu.com" target="_self">百度</a> 

href,target是a链接中固有的属性值 用prop()方法获取属性值.

<a href="#" id="desc" action="drop">减少</a> 

href,id是a链接中固有的属性值 ,但是action是自己添加的属性值,所有如过我想获取action的属性值,用attr().

当然固有属性也可以用attr()来获取

使用 html() 相当于原生 javascript 的 innerHtml ,即可以获取元素的之间的html内容,还可以创建新的html元素。

可以看到内部的html内容已经修改了。

从上面这个示例可以看出,如果我们需要随时新建一个新的元素,那么可以提前写好样式,然后在创建html元素的时候加上即可。

这是关于设置属性值的 *** 作。我们可以继续上面的示例,获取一下新创建内部div的属性值。

有位这么积极的朋友提出观点我很高兴哈,但是 innerHTML 不会执行脚本这个,我是想说,这位朋友把 innerHTML 跟 innerText 搞混了。

那么下面我来演示一下 innerHTML 执行脚本的示例,如下:

点击a标签,触发执行js方法,如下:

然后可以发现,脚本执行了。

你可以发现 innerHTML 和 html() 都是可以解析 html 基本元素语句,这个才是可以执行脚本的关键。

关于评论中说 innerHTML 不能执行脚本, 继续真相图:

其实,关键一点是看方法是否有解析html标签等元素,如果不能解析,就无法执行脚本。

大概如此,祝五一快乐!


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/7387031.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-05
下一篇 2023-04-05

发表评论

登录后才能评论

评论列表(0条)

保存