Home Web Front-end JS Tutorial JavaScript application analysis for DOM (2)_DOM

JavaScript application analysis for DOM (2)_DOM

May 16, 2016 pm 05:54 PM
dom

In fact, native JS also has these attributes. Almost the same as JQ but a little less. But it is a little more troublesome to use than JQ. Mainly because of the FF browser, because FF will treat your line break as a DOM element. For example,

Copy code The code is as follows:






I use native JS to get the ID as dom child elements under the element. The method I mentioned in the first chapter is var a = document.getElementById("dom").getElementsByTagName("div"); This is no problem. Yes, the alert(a.length) prompt will be 2, but now we use another method to obtain the var b = document.getElementById("dom").childNodes I mentioned in the last chapter; if so alert(b.length)IE There is no problem in the browser, it is still 2, but in the FF browser, it will prompt that it is 4. This is because FF treats line breaks as an element.
So we have to deal with those attributes in order to use JS. Processing ideas is as simple as traversing these elements. Delete all elements whose type is space and text. The processing function is like this
Copy code The code is as follows:

function del_space(elem){
var elem_child = elem.childNodes;
for(var i=0;iif(elem_child.nodeName == "#text" && !/S/.test( elem_child.nodeValue))
{elem.removeChild(elem_child)}
}}

Let me explain this function
var elem_child = elem.childNodes;
Pass The child elements of the incoming elem element are thrown to elem_child;
Copy the code The code is as follows:

for(var i=0;iif(elem_child.nodeName == "#text" && !/S/.test(elem_child.nodeValue))
{elem.removeChild (elem_child)}
}

Iterate through these child elements. If there is a node type in these elements that is text and the node value of this text type node is empty. Just delete it

(nodeName is an attribute in JS, which is used to get the node type of this node. /S/ is the regular expression of non-null characters in JS. Adding an exclamation mark in front of it means it is a null character. . Test is a method of JS, which is to compare the things inside it with the things outside. nodeValue means to get the value in this node. removeChild is also a method to delete a child element of the outside element)

like this You only need to call this function to clear the spaces before calling these attributes, and you can use it with confidence. For example,
Copy the code The code is as follows:






<script> <br>function dom(){ <br>var a = document.getElementById("dom"); <br>del_space(a); Call the function to clean up spaces<br>var b = a.childNodes; Get all the child nodes of a; <br>var c = a.parentNode; Get the parent node of a; <br>var d = a.nextSbiling; Get the next sibling node of a<br>var e = a.previousSbiling; Get the previous sibling node of a<br>var f = a.firstChild; Get the first child node of a<br>var g = a.lastChild; Get the last child node of a<br><br>} <br></script>

(In addition. var b = a.childNodes; also obtains an array; so for example, if I want to use the first node, it is childNodes[0]; The second node I want to use is childNodes[1]; and so on)

Getting the DOM is over here. The next chapter will teach you how to operate DOM elements.
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

What does vue dom mean? What does vue dom mean? Dec 20, 2022 pm 08:41 PM

DOM is a document object model and an interface for HTML programming. Elements in the page are manipulated through DOM. The DOM is an in-memory object representation of an HTML document, and it provides a way to interact with web pages using JavaScript. The DOM is a hierarchy (or tree) of nodes with the document node as the root.

What is the reason why ref binding to dom or component fails in vue3 and how to solve it What is the reason why ref binding to dom or component fails in vue3 and how to solve it May 12, 2023 pm 01:28 PM

Vue3ref binding DOM or component failure reason analysis scenario description In Vue3, it is often used to use ref to bind components or DOM elements. Many times, ref is clearly used to bind related components, but ref binding often fails. Examples of ref binding failure situations The vast majority of cases where ref binding fails is that when the ref is bound to the component, the component has not yet been rendered, so the binding fails. Or the component is not rendered at the beginning and the ref is not bound. When the component starts to render, the ref also starts to be bound, but the binding between ref and the component is not completed. At this time, problems will occur when using component-related methods. The component bound to ref uses v-if, or its parent component uses v-if to cause the page to

What are the ways to obtain DOM nodes in Vue3 What are the ways to obtain DOM nodes in Vue3 May 11, 2023 pm 04:55 PM

1. Native js gets the DOM node: document.querySelector (selector) document.getElementById (id selector) document.getElementsByClassName (class selector).... 2. Get the instance object of the current component in vue2: because each vue Each component instance contains a $refs object, which stores references to the corresponding DOM elements or components. So by default, the component's $refs point to an empty object. You can first add ref="name" to the component, and then pass this.$refs.

What are the dom and bom objects? What are the dom and bom objects? Nov 13, 2023 am 10:52 AM

There are 5 DOM objects including "document", "element", "Node", "Event" and "Window"; 2. "window", "navigator", "location" and "history" and "screen" and other 5 BOM objects.

DOM manipulation guide in PHP DOM manipulation guide in PHP May 21, 2023 pm 04:01 PM

In web development, DOM (DocumentObjectModel) is a very important concept. It allows developers to easily modify and operate the HTML or XML document of a web page, such as adding, deleting, modifying elements, etc. The built-in DOM operation library in PHP also provides developers with rich functions. This article will introduce the DOM operation guide in PHP, hoping to help everyone. The basic concept of DOM DOM is a cross-platform, language-independent API that can

What is the difference between bom and dom What is the difference between bom and dom Nov 13, 2023 pm 03:23 PM

BOM and DOM are different in terms of role and function, relationship with JavaScript, interdependence, compatibility of different browsers, and security considerations. Detailed introduction: 1. Role and function. The main function of BOM is to operate the browser window. It provides direct access and control of the browser window. The main function of DOM is to convert the web document into an object tree, allowing developers to Use this object tree to obtain and modify the elements and content of the web page; 2. Relationship with JavaScript, etc.

What are the built-in objects of DOM? What are the built-in objects of DOM? Dec 19, 2023 pm 03:45 PM

dom内置对象有:1、document;2、window;3、navigator;4、location;5、history;6、screen;7、document.documentElement;8、document.body;9、document.head;10、document.title;11、document.cookie。

Examples to explain how js implements horizontal and vertical scrolling animation of dom elements Examples to explain how js implements horizontal and vertical scrolling animation of dom elements Aug 07, 2022 am 09:36 AM

​This article will introduce to you how to implement horizontal and vertical scrolling animation of DOM elements in js. I hope it will be helpful to friends in need!

See all articles