怎么获取 dom element

怎么获取 dom element,第1张

一,获取html元素

1getElementByID(id)

通过对元素的ID访问,这是DOM一个基础的访问页面元素的方法

example:

<div id="divid">测试</div>

<script language="javascript">

var div=documentgetElementByID("divid");

alert (divnodeName); //显示元素名

</script>

如果id在元素中不是唯一的,那么获得的将是第一个ID

2getElementsByName(name)

仅用于input radio checkbox等元素,返回名字为name的元素数组

example:

<div name="george"></div>

<input name="george"></div>

<script language=javascript>

var ge=documentgetElementsByName("george");

alert (georgeslength); //获取georges个数,对div唔效果

</script>

3getElementsByTagName(tagname)

返回具有tagname的元素列表数组处理大的DOM结构会用到它

二,DOM Element常用方法

1appendChild(node) //增加内容

向当前对象追加节点,example:

<div id="test">123</div>

<script type="text/javascript">

var newdiv=documentcreateElement("div");

var newtext=documentcreateTextNode("A new div");

newdivappendChild(newtext) ;

documentgetElementById("test")appendChild(newdiv) ;

</script>

当然,上面的功能用documentgetElementById("test")innerHTML="测试一下"就可实现,遗憾的是,innerHTML不属于DOM

2,removeChild(childreference)

移除当前节点的子节点,并返回节点

<div id="father"><div id="child">A child</div></div>

<script type="text/javascript">

var childnode=documentgetElementById("child");

var removednode=documentgetElementById("father")removeChild(childnode)

</script>

3cloneNode(deepBoolean)

复制并返回当前的复制节点,由于复制了原节点的id属性,所以在document树中要改ID属性,以确保ID唯一性

4,insertBefore(newElment,targetElement) 插入新的节点

在当前节点插入一个新节点,如果targetElement为null,那新节点为最后节点

example:

<body>

<span id="lovespan">熊掌我所欲也!</span>

</body>

<script type="text/javascript">

var lovespan=documentgetElementById("lovespan"); //获取id

var newspan=documentcreateElement("span");

var newspanref=documentbodyinsertBefore(newspan, lovespan);

newspanrefinnerHTML="鱼与";

</script>

三,DOM Element常用属性

1、childeNodes 返回所有子节点对象,

例如

<ul id="mylist">

<li>美国</li>

<li>意大利</li>

<li>加拿大</li>

</ul>

<script>

var msg="" ;

var mylist=documentgetElementById("mylist")

for (i=0; i<mylistchildNodeslength; i++){

var li=mylistchildNodes[i];

msg+=liinnerText;

}

alert (msg);

</script>

2,innerHTML

这是一个标准,但它并不书DOM

例如:

<div id="bbb"><span id="aaa">我拉</span></div>

<input type=button value="点击看看">

<script language="javascript">

function change()

{

documentgetElementById("aaa")innerHTML= "修改修改";

}

</script>

3,style

这是一个极其重要的属性,可以获取并修改每个单独的样式

例如:documentgetElementByTagName("body")[0]stylebackgroundColor="#cccccc"

4、firstChild 返回第一个子节点

lastChild 返回最后一个子节点

parentNode 返回父节点的对象。

nextSibling 返回下一个兄弟节点的对象

previousSibling 返回前一个兄弟节点的对象

nodeName 返回节点的HTML标记名称,使用英文的大写字母,如P, FONT

5,click()

执行元素的一次点击,可以用于通过脚本来触发onClick函数

在 vue2 中,我们通过 ref 为节点添加一个名称,然后用 this$refs['节点名称'] 就可以获取到DOM节点,

例:

在 vue3 中,我们一样可以通过为节点添加一个 ref 名称 ,但是接下来的步骤和 vue2 有些区别

1为节点添加一个 ref 名称

2创建 ref 响应式常量并且与 DOM 节点名称一致 ,且值为 null

3在 mounted 之后通过 常量的 value 即可获取到 DOM 节点

例:

OK,今天就写这么多~!

当HTML渲染时,DOM元素可能无法获取,这是因为DOM元素可能还没有被创建或者渲染完成。为了解决这个问题,您可以使用JavaScript的windowonload或者jQuery的$(document)ready()函数,这两个函数可以确保DOM元素已经被完全渲染,从而可以获取到DOM元素。此外,您还可以使用JavaScript的setTimeout()函数,让它在DOM元素被渲染完成之后再执行,从而保证DOM元素可以被正确获取。

以上就是关于怎么获取 dom element全部的内容,包括:怎么获取 dom element、vue3 如何通过 ref 获取 DOM 节点、html渲染时,dom元素获取不到等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/web/9504298.html

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

发表评论

登录后才能评论

评论列表(0条)

保存