首页 > 其他分享 >js-DOM元素操作

js-DOM元素操作

时间:2023-04-20 09:34:46浏览次数:30  
标签:DOM 标签 元素 js 获取 html 文本 属性

注意,html从上往下解析,如果script在html元素之前,并且是直接执行,将获取不到元素,为null。需要使用window.onload事件声明,或者将js写在html元素后面

1、innerText和innerHTML属性

  • html元素调用innerText属性,可以获取元素内部的文本内容,也可以直接赋值文本内容
    • 读取,不包括指定元素本身的开始标签和结束标签部分
    • 读取,如果调用该属性的html元素内部有嵌套其他标签,依次提取其内部标签的文本内容,同样不包括嵌套标签的开始和结束标签部分
    • 读取,如果标签内部存在多个联系空白符,会处理为一个空格
    • 赋值,即将待替换文本直接代替调用该属性的元素内部。注意并不会解析为html,而是普通文本
    • 赋值,多个连续的空白符会处理为一个空格。\n等转义字符可以识别,不会省略处理
    • 读取textarea,为空字符串””,可以基于此进行赋值,但是对\n无法识别,对\’可以识别,对多个连续空格原样输出。不建议对textarea使用该属性
  • html元素调用innerHTML属性,可以获取元素内部的html代码,也可以直接赋值html代码
    • 读取,不包括指定元素本身的开始标签和结束标签部分。然后之间的所有内容包含返回,包括嵌套的标签、注释、连续的多个空白符
    • 读取textarea,正常返回
    • 赋值,即将待替换文本直接代替调用该属性的元素内部。注意其可能解析为html元素
var obj = document.getElementById('ob')
obj.innerText//获取文本
obj.innerText='<span style="color:red"></span>'//赋值文本,不会解析
obj.innerHTML//获取html代码
obj.innerHTML='<span style="color:red"></span>'//赋值html,会解析

2、value属性

textarea、input获取输入文本或者设置

value //获取
value="abc"//设置

3、其他属性

attribute_name //基于元素的属性名称获取值
attribute_name= attribute_value //基于元素的属性名称设置值
  • 获取属性,只能是该元素由解析引擎定义具有的属性,比如在a标签获取src或者f属性,都是undifined,即使在当前a标签中声明src属性或者f属性。
  • 获取属性,如果是可以使用的属性,但是未在当前标签定义,则返回空字符串,比如a标签未定义href属性而进行获取
  • 获取属性,地址类设置为相对路径或者根路径,获取到的一般是其表示的绝对地址,比如a标签设置href为abc
  • 设置某一属性,不影响其他属性或者事件
  • 设置属性之后,会重新加载该html元素,进行生效。可能会进行显式的效果。比如img的src赋值错误,会触发绑定的onerrer事件
  • 使用较多的是src属性、href属性
<img alt="aaa" one rror=alert(123) onclick="this.src=1">

4、style属性

可以通过html元素是style属性操作样式,语法:

document.getElementById(id).style.property=新样式

示例:

style.color="blue";
style.fontFamily="Arial";
style.fontSize="larger";
style.visibility='visible' 显示文本
style.visibility='hidden' 隐藏文本

标签:DOM,标签,元素,js,获取,html,文本,属性
From: https://www.cnblogs.com/wd404/p/17335615.html

相关文章

  • js全局属性和函数
    1、js全局属性Infinity:代表正无穷大的数值NaN:指示某个值不是数字undefined:指示未定义的值2、eval函数eval("x=10;y=20;document.write(x*y)")如果参数是一个表达式,eval()函数将执行表达式。如果参数是Javascript语句,eval()将执行Javascript语句。3、判断isFinite():检......
  • 浏览器执行js脚本
    1、四种基本的形式(1)script内部<script>alert('xss')</script>(2)script引入外部js文件<scriptsrc='check.js'></script><scriptsrc=https://www.freebuf.com/freebuf/2.1.0.cd254c064b386bee9d41.js></script>需要注意如果当前页面是......
  • nodejs命令
    npm常用命令:1.npminstallpackage_name:安装指定的Node.js模块。2.npmuninstallpackage_name:卸载指定的Node.js模块。3.npmupdatepackage_name:更新指定的Node.js模块到最新版本。4.npmsearchpackage_name:搜索指定名称的Node.js模块。5.npmlist:列出当前项......
  • js介绍
    1、介绍javascript,简称为js,是一种解释型脚本语言,一般在浏览器运行,被所有现代浏览器支持,在h5中,默认脚本就是js。当然,也可以在其他支持js解析的环境中允许,比如服务端的node.js。js主要可以分为四个部分:基本语法,与es强烈相关,提供支持。包括语法规范、数据类型、运算符、控制结构......
  • js控制结构
    1、if…elseif…else…if(15){alert('abc')}js存在强转bool类型其他与java语法相同2、switch3、while4、dowhile5、forvarlist=[12,22,'abc','ddd']for(leti=0;i<list.length;i++){alert(list[i])}6、增强for7、迭代......
  • js数据类型
    1、介绍js是弱类型语言。2、数值varx1=34.00;//使用小数点来写varx2=34;//不使用小数点来写vary=123e5;//123000003、字符串s='abc's1="abc"s2=/xss///输出/xss/,连同/字符4、布尔varx=true;vary=false;5、数组varcars=newArray......
  • js语法
    1、注释//单行注释/*多行注释*/2、关键字3、标识符由数字、字母和下划线组成,首字符不能是数字4、代码分行使用()包围结构控制提交,使用{}控制代码块5、文本分行不存在/分行,必须使用+......
  • js函数
    1、介绍js函数是通过关键字function进行定义。functionfunctionName(parameters){执行的代码}2、匿名函数函数作为一个变量使用。varx=function(a,b){returna*b};varz=x(4,3);3、参数个数functionp(x1,x2){console.log(x1)console.log(x2)}p(......
  • js类
    1、介绍js中具有和java类似的类声明和创建对象。classRunoob{constructor(name,url){this.name=name;this.url=url;}}letsite=newRunoob("菜鸟教程","https://www.runoob.com");2、类继承js中也使用关键字extends进行类继承3、static静态......
  • jsonfilter 和 jshn.sh
    jsonfilter和jshn.sh来源https://blog.csdn.net/weixin_39637151/article/details/110610608 OpenWRT下自带了两个处理JSON文件的工具。工具一:/usr/bin/jsonfilter运行/usr/bin/jsonfilter得到如下提示:/usr/bin/jsonfilter命令行参数-a:将输入当数组处理。-i:指......