JS基础---Dom的基本操作
DOM的增删改查
增:
1.创建一个元素节点
document.createElement()
创建新的<p> 元素:var para=document.createElement("p");
2.创建一个文本节点
document.createTextNode()
var node=document.createTextNode("This is a new paragraph.");
3.在已存在的元素中追加新元素
element.appendChild()
向 <p> 元素追加这个文本节点: para.appendChild(node);
4.创建属性节点
document.createAttribute()
5.在已存在的节点前添加一个新元素
insertBefore(所要添加的新节点,已存在的节点)
删:
1.删除节点
removeChild()
2.删除属性
removeAttribute()
3.替换节点
replaceChild(要插入的新元素,将被替换的老元素)
4.复制节点
cloneNode(true/false)
true:复制当前节点及子节点
false:仅复制当前节点
改:
1.修改html元素的内容
document.getElementById(id).innerHTML="新内容"
2.修改元素的属性
document.getElementById(id).属性="新值"
或者
元素节点.setAttribute(属性,值)
3.修改元素的CSS样式
document.getElementById(id).style.样式="新值"
查:
1.通过id查找HTML元素节点
document.getElementById(元素id)
2.通过元素的name属性查找HTML元素节点
document.getElementsByName(元素的name属性)
3.通过元素标签查找HTML元素节点
document.getElementsByTagName(元素标签)
4.获取元素的指定属性节点
元素节点.getAttribute(元素属性名)
附:

jQuery DOM的增删改查
增:
1.创建元素节点
直接使用$(html)工场函数来创建Dom对象
var $new=$("<p id="title">创建元素节点</p>")
2.创建文本节点
在创建元素节点时,可以一起创建
3.创建属性节点
同上
删:
1. remove() 将该节点及包含的所有后代节点都删除
2. empty() 清空节点,清空此元素的内容
3.removeAttr() 删除某个元素的特定属性
4.removeClass() 移除样式
改:
1.获取、设置HTML、文本的值
html() 读取或设置某个元素中的html内容,同 js 中的innerHTML属性
text() 读取设置某个元素的文本内容,同 js 中的innerText属性
vue() 可以用来获取和设置元素的值,同 js 中value属性
2.获取、设置属性
attr() 只需给该方法传递一个参数,即属性名称
3.获取、设置CSS样式
attr(class , "样式类") 设置样式
css("样式" , "值") 设置样式
addClass(“样式类”) 追加样式
toggle( function(){//显示} , function(){//隐藏} ) 交换一组动作
toggleClass() 控制样式上的重复切换
hasCLass() 判断元素中是否含有某个class,有则返回true
5.插入节点
append() 向匹配的元素内部追加内容
appendTo() 将匹配的内容追加到
prepend() 向匹配的元素内部前置内容
prependTo() 将匹配的元素前置到
after() 在匹配的元素后插入内容
insertAfter() 反之
before() 在匹配的元素前面插入内容
insertBefore() 反之
注意:移动节点时,首先是先从文档中删除元素,再将其插入到指定节点
6.复制节点
clone(true) 参数为true的话,将同时复制元素中所绑定的事件
7.替换节点
replaceWith() 将匹配内容替换成指定的HTML或者DOM元素
replaceAll() 指定的内容将全部替换......
注意:替换后原先绑定的事件将会与被替换的元素一起消失
8.包裹节点
wrapAll() 该方法将所有匹配到的元素用一个元素包裹
wrapInner() 该方法将每一匹配到的元素(包括它的文本节点)都单独用其他结构标记包裹起来
查:
直接使用jQuery的选择器查找
总结:
老实说原生js很恶心,一个个名字又臭又长,jquery是js的一个库,用来简化Dom操作的,因此jquery在dom操作上很多都和原生用法如出一辙,而且名字又短,所以今后两者使用的时候短而简的方法名就是jquery的方法。
JS基础---Dom的基本操作的更多相关文章
- JS基础-DOM
DOM DOM 事件的级别 DOM 事件模型 DOM 事件流 DOM 事件捕获的具体流程 Event 对象的常见应用 自定义事件 DOM概述 | MDN DOM | MDN DOM操作 DOM事件级别 ...
- 05 JS基础DOM
JS的window对象定时器: window下一些方法: <script> 弹出 window.alert('hello') 返回布尔值 var ret = window.confirm( ...
- JS基础DOM篇之二:DOM级别与节点层次?
通过上一篇我们大致了解了什么是DOM,今天我们继续深入了解. 1.DOM级别 在大家阅读DOM标准的时候,可能会看到DOM(0/1/2/3)级的字眼,这就是DOM级别.但实际上,DOM0级 ...
- JS基础DOM篇之一:何为DOM?
近日在园子看了一篇文章,一位前端负责人问应聘者何为DOM事件流的三个阶段,我当时一看也是懵圈,于是强迫症复发,遂想要搞清楚它.谁知在查资料的过程中发现有好多关于DOM的概念也是模糊不清,便决定继续延伸 ...
- 2.3 js基础--DOM
一.javascript组成 ECMAScript:核心解释器[为我们提供好了最基本的功能:变量声明.函数.语法.运算]. 兼容性:完全兼容. DoM:文档对象 ...
- JavaScript基础—dom,事件
Js基础-DOM 1:dom:文档对象模型 Dom就是html页面的模型,将每个标签都作为一个对象,js通过调用dom中的属性,方法就可以对网页中的文本框,层等元素进行编程控制.Dom就是一些让jav ...
- JavaScript基础15——js的DOM对象
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- JS基础--函数与BOM、DOM操作、JS中的事件以及内置对象
前 言 絮叨絮叨 这里是JS基础知识集中讲解的第三篇,也是最后一篇,三篇JS的基础,大多是知识的罗列,并没有涉及更难得东西,干货满满!看完这一篇后,相信许多正在像我一样正处于初级阶段的同学, ...
- 【2017-03-28】JS基础、DOM操作
一.JS基础 1.javascript功能 ⑴进行数据运算 ⑵控制浏览器功能 ⑶控制元素的属性.样式.内容 2.javascript位置和格式 可以放在html页的任意位置,也可以创建一个以js结尾的 ...
随机推荐
- GUI编程实例
function varargout = GUI013(varargin) % GUI013 MATLAB code for GUI013.fig % GUI013, by itself, creat ...
- [转载]Javascript:history.go()和history.back()的用法和区别
Javascript:history.go()和history.back()的用法和区别 简单的说就是:go(-1): 返回上一页,原页面表单中的内容会丢失:back(): 返回上一页,原页表表单中的 ...
- Python+OpenCV图像处理(六)—— ROI与泛洪填充
一.ROI ROI(region of interest),感兴趣区域.机器视觉.图像处理中,从被处理的图像以方框.圆.椭圆.不规则多边形等方式勾勒出需要处理的区域,称为感兴趣区域,ROI. 代码如下 ...
- Django框架----命名URL和URL反向解析
在使用Django 项目时,一个常见的需求是获得URL 的最终形式,以用于嵌入到生成的内容中(视图中和显示给用户的URL等)或者用于处理服务器端的导航(重定向等).人们强烈希望不要硬编码这些URL(费 ...
- 理解Sql Server 事务隔离层级(Transaction Isolation Level)
关于Sql Server 事务隔离级别,百度百科是这样描述的 隔离级别:一个事务必须与由其他事务进行的资源或数据更改相隔离的程度.隔离级别从允许的并发副作用(例如,脏读或虚拟读取)的角度进行描述. 隔 ...
- Q_DECL_OVERRIDE
Q_DECL_OVERRIDE也就是c++的override # define Q_DECL_OVERRIDE override 在重写虚函数时会用到, 作用是防止写错虚函数: void keyPre ...
- mysql库、表、索引
创建和删除数据库,同一个数据库下的不同表可以采用不同的引擎 mysql> create database oldboy default character set utf8 collate ut ...
- P3332 [ZJOI2013]K大数查询(线段树套线段树+标记永久化)
P3332 [ZJOI2013]K大数查询 权值线段树套区间线段树 把插入的值离散化一下开个线段树 蓝后每个节点开个线段树,维护一下每个数出现的区间和次数 为了防止MLE动态开点就好辣 重点是标记永久 ...
- Cannot resolve reference to bean 'sqlSessionFactory' while setting bean
今天下载公司以前的一个项目,要和现在的项目进行整合,下载一切顺利,但在开发机器上一跑,憋了. 有两种日志,两种报错:一个是cannot resolve reference to bean 'sqlSe ...
- Spring Boot 2 (六):使用 Docker 部署 Spring Boot 开源软件云收藏
Spring Boot 2 (六):使用 Docker 部署 Spring Boot 开源软件云收藏 云收藏项目已经开源3年多了,作为当初刚开始学习 Spring Boot 的练手项目,使用了很多当时 ...