怎么获取 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函数

使用Jquery获取某个div时需要这样:前台使用EL进行迭代LIST生成div,为其添加动态的id,生成之后变成下面样式

<div id="tz-1"></div>

<div id="tz-2"></div>

<div id="tz-3"></div>

<div id="tz-4"></div>

<div id="tz-5"></div>

<div id="tz-6"></div>

注意:我们在使用Jquery获取某个div时需要这样写

$("#" + 所定义的id变量名);

而不能写成这样

$("#所定义的id变量名");

扩展资料:

jQuery是一个快速、简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架)。jQuery设计的宗旨是“write Less,Do More”,即倡导写更少的代码,做更多的事情。它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优化HTML文档 *** 作、事件处理、动画设计和Ajax交互。

ID选择器:选择具有给定id属性的单个元素。

对于id选择器,jQuery使用JavaScript函数documentgetElementById(),这是非常有效的。当另一个选择器连接到id选择器时,如H2#页滴,jQuery在将元素标识为匹配之前执行额外的检查。

呼叫jQuery()(或$()),以id选择器作为其参数,将返回一个jQuery对象,该对象包含一个包含0或一个DOM元素的集合。

各ID值只能在文档中使用一次。如果已为多个元素分配了相同的ID,则使用该ID的查询只会选择DOM中的第一个匹配元素。但是,不应依赖此行为;使用相同ID的多个元素的文档无效。

如果id包含像句点或冒号这样的字符,则必须用反斜杠转义那些字符

参考资料:

百度百科 jQuery

Jquery官方API -ID Selector

方法有两种:

1、通过jquery的方式,使用id选择器方式获取节点,然后获取值。

2、通过原生的dom方式,获取id的值。

每一个HTML元素都使用id来进行一个标注,随后可以通过documentgetElementById(“ID名称”)取得指定的ID元素对象,取得元素对象之后就可以对其进行 *** 作。

但是documentgetElementById()只能取得一个元素信息。

documentgetElementById(“id”) 获取到的是整个对象。

documentgetELementById(“id”)innerHTML;才可以获取到其中的内容。

documentgetElementById('con')获取的只是P标签,返回的[objectHTMLParagraphElement]。

documentgetElementById('con')innerHTML获取的才是P标签里的内容,返回的是JavaScript。

扩展资料:

JavaScript脚本语言具有以下特点:

(1)脚本语言。JavaScript是一种解释型的脚本语言,C、C++等语言先编译后执行,而JavaScript是在程序的运行过程中逐行进行解释。

(2)基于对象。JavaScript是一种基于对象的脚本语言,它不仅可以创建对象,也能使用现有的对象。

(3)简单。JavaScript语言中采用的是弱类型的变量类型,对使用的数据类型未做出严格的要求,是基于Java基本语句和控制的脚本语言,其设计简单紧凑。

(4)动态性。JavaScript是一种采用事件驱动的脚本语言,它不需要经过Web服务器就可以对用户的输入做出响应。在访问一个网页时,鼠标在网页中进行鼠标点击或上下移、窗口移动等 *** 作JavaScript都可直接对这些事件给出相应的响应。

(5)跨平台性。JavaScript脚本语言不依赖于 *** 作系统,仅需要浏览器的支持。因此一个JavaScript脚本在编写后可以带到任意机器上使用,前提上机器上的浏览器支持JavaScript脚本语言,目前JavaScript已被大多数的浏览器所支持。

不同于服务器端脚本语言,例如PHP与ASP,JavaScript主要被作为客户端脚本语言在用户的浏览器上运行,不需要服务器的支持。所以在早期程序员比较青睐于JavaScript以减少对服务器的负担,而与此同时也带来另一个问题:安全性。

而随着服务器的强壮,虽然程序员更喜欢运行于服务端的脚本以保证安全,但JavaScript仍然以其跨平台、容易上手等优势大行其道。

同时,有些特殊功能(如AJAX)必须依赖Javascript在客户端进行支持。随着引擎如V8和框架如Nodejs的发展,及其事件驱动及异步IO等特性,JavaScript逐渐被用来编写服务器端程序。

参考资料来源:百度百科-javascript

有一定的JS基础后,就可以进入 dom 环节了,dom使得网页的交互效果得到完美呈现,可以说dom真正打开了网页和用户之间的通道桥梁,日常生活中我们点击鼠标,敲击键盘,甚至于无意间触碰到屏幕(触摸屏),都会或多或少或大或小的得到一些躲藏起来的内容。

打开淘宝,在输入框输入商品时,下拉的推荐商品:

或是当打开某个不想再浏览的网页时,右上角的那个×:

这些大部分都存在DOM的身影。

这里的“DOM”,通常来讲,叫做 DOM 文档对象模型 , 通过 *** 纵DOM,可以随意更改内容,样式,或者增删改查 ,因为网页是在浏览器中显示的,整个浏览器是BOM,所以DOM其实是BOM的一部分,BOM 就是 window对象 ,DOM 就是 document(文档)对象。

如果该元素,是网页的必备元素,而且只能有一个,可以通过document对象直接获取。比如:的src属性:

任由我们怎么去修饰的显示,但它本身的路径属性是独有的,所以我们可以直接获取:

更多的时候,我要需要获取网页中的指定元素,这就需要专门的方法来获取了,这里列举几个方法:

getElementById()方法,根据元素的id属性值来获取指定的元素,因为ID的唯一性,使得该方法需要搭配ID选择器使用,如果网页里ID重复时,它会获取第一个:

getElementsByTagName()方法,根据元素的标签名获取所有该元素,该方法获取的是所有该标签的元素,以伪数组的形式呈现:

getElementsByClassName()方法,根据元素的类选择器名称获取所有该元素,该方法获取的途径是标签的类,也就是class属性,由于拥有该属性的标签可能不只一个,所以该方法获得的也是一个伪数组(还有,可以看方法名,凡是带Elements的大多数都是伪数组):

getElementsByName()方法,根据元素的name属性值获取所有该元素,相同的性质,有name属性的标签也不少:

querySelector()方法,根据选择器的名称返回元素,如果有多个元素,只返回第一个元素,这个方法就比较常用了,而且IE这个啥也不咋适配的浏览器现在几乎不咋能见到了,可以多多考虑用他了该方法是  ES6新增,无论是ID 还是class都可以选,但是和上面区别的是选ID时前面要加#号,选class时前面要加“”:

区别于Elements,这里是个单数,所以只会获取一个,要是想获取多个相同的,就用querySelectorAll()吧!querySelectorAll()看这个ALL就知道它是用来选全部的:

最后这俩方法更实用,可以选取CSS几乎所有选择器,而且querySelectorAll()得到的数组数据后还可以使用数组的方法。

*** 作DOM的样式 ,有多种方式:

通过style属性直接设置

通过className属性设置类选择器

也可以通过classList属性添加多个类选择器

*** 作DOM的内容:

innerText属性,用于获取 和 *** 作 DOM的文本内容。

innerHTML属性,用于获取 和 *** 作 DOM的HTML内容:

createElement()方法,用于创建DOM元素:

appendChild()方法,用于在当前DOM元素中添加子元素:

自删 remove()方法,是元素删除自己:

通过父级删除子级 removeChild()方法,是删除元素里面指定的子元素:

通过angularjs获取html元素id没有直接的方法,因为id是一个dom *** 作。

Angular不会帮助用户获得DOM的某个属性。如果需要使用的是DOM选择器,不管是原生的也好或者像jQuery这样的库也好。

官方说法:不能在控制器里面做DOM *** 作,那我就把DOM *** 作相关的代码放到指令里面好了这种做法确实是好一些了,但是通常还是是错误的。

首先明白一点,uni-app提供的view、button、image、text通通都是组件,不是h5的标签,虽然用起来方便,但如果你想获取dom节点信息,尽管给组件绑定一个id选择器,用documentgetElementById()等这种传统的JS获取dom方式是没有任何效果。

因为他们是组件,除非你不用这些现成的组件,用回h5的标签。

所以你如果想获取uni-app提供组件的DOM元素,需要如下的方法。

unicreateSelectorQuery()in(this);用于创建一个实例。

in(this)在这里是为了规范页面创建实例,避免获取不到实例报null,用上总没错

queryselect('#text')用于选择DOM节点

boundingClientRect()返回dom节点的相关信息

拿到的是一些元素本身的宽高信息、距离页面四边的距离。

使用unicreateSelectorQuery()创建dom实例,需要在这个mounted()生命周期里面进行,这个生命周期它代表组件已经创建完成,可以挂载实例,进而获取dom元素

如果不写在mounted生命周期里,你也可以写在methods方法定义里面,不过你需要这样来调用。

以上就是关于怎么获取 dom element全部的内容,包括:怎么获取 dom element、jQuery 如何通过 ID 选择器 获取动态ID、如何用js获取id 元素内容等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址:https://54852.com/web/9420717.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存