JavaScript 读取修改元素 及 伸拉门案例
JavaScript 读取修改元素 及 伸拉门案例
版权声明:未经授权,严禁转载!
读取 / 修改元素
- 读取修改元素内容
- 读取修改元素属性
- 读取修改元素样式
元素的内容
读取或修改元素节点中的 HTML 内容 :elem.innerHTML
- 读取:elem.innerHTML
- 读取时会将元素内的所有内容都读出,包括文本和标签。
- 修改:elem.innerHTML = xxx;
- 修改时会将内容中的标签部分解析为 HTML 元素。
HTML代码:
<div id="main">
<h1>热点新闻</h1>
<p><a href=""><<新华社报道>>,今日将有大雨。</a></p>
</div>
<input id="inp" type="text" value="请输入用户名"> <script src="mJS.js"></script>
JavaScript
var main = document.getElementById("main")
// 读取元素中的内容。
console.log(main.innerHTML); // 含HTML标记
console.log(main.textContent) // 不含HTML标记
// 修改
main.firstElementChild.innerHTML="<span>最新动态</span>" // 转为HTML标签
main.lastElementChild.textContent="<a href='#'>国庆全国放假</a>>" // 普通文本
// 获取文本框内容
var inp = document.getElementById("inp")
console.log(inp.value);
// 修改
inp.value ="请输入密码";

案例
使用 JavaScript 实现 推拉门效果

一、搭建页面
HTML
<style>
#d1,#d2,#d3{
height: 200px;
}
.list{
width: 500px;
}
#d1{
width: 150px;
float: left;
background: #aaafff;
}
#d2{
width: 20px;
float: left;
line-height: 200px;
background: #ffcc00;
/*鼠标移上去变成小手*/
cursor: pointer;
}
#d3{
background: #ccff00;
}
</style> <div class="list">
<div id="d1">树型列表</div>
<div id="d2"><<</div>
<div id="d3">主体内容主体内容主体内容主体内容主体内容主体内容主体内容</div>
</div>

二、思路整理
1.打击<<d2时,左边框d1打开或关闭
2.查找触发事件的元素 d2
3.为d2绑定事件处理函数
查找需要修改的函数
修改
为之前写的 HTML中的 CSS添加两个样式
/* 使用内联样式修改宽度,不需要这两条样式 */
/*显示*/
.show{
display:block;
}
/*隐藏*/
.hide{
display:none;
}
JavaScript
// 1.打击<<d2时,左边框d1打开或关闭 // 2.查找触发事件的元素 d2
var d2 = document.getElementById("d2");
// 3.为d2绑定事件处理函数
d2.onclick = function () {
// 查找需要修改的函数
var d1 = document.getElementById("d1");
// 修改
// console.log(d2.textContent) // <<
// console.log(d2.innerHTML) // <<
if (d2.textContent == "<<") {
// d1.className = "hide";
// 修改 div 的内联样式
d1.style.width ="0px";
d2.textContent = ">>"
} else {
// d1.className = "show";
d1.style.width ="150px";
d2.textContent = "<<"
} }
三、拖拉过渡效果
为 d1 的样式添加一条过渡效果属性
/*设置 d1 的过渡效果*/
transition: all 0.5s;
四、项目的全部代码
HTML
<style>
#d1,#d2,#d3{
height: 200px;
}
.list{
width: 500px;
}
#d1{
width: 150px;
float: left;
background: #aaafff;
/*设置 d1 的过渡效果*/
transition: all 0.5s;
}
#d2{
width: 20px;
float: left;
line-height: 200px;
background: #ffcc00;
/*鼠标移上去变成小手*/
cursor: pointer;
}
#d3{
background: #ccff00;
} /*显示*/
.show{
display:block;
}
/*隐藏*/
.hide{
display:none;
} </style> <div class="list">
<div id="d1">树型列表</div>
<div id="d2"><<</div>
<div id="d3">主体内容主体内容主体内容主体内容主体内容主体内容主体内容</div>
</div> <script src="mJS.js"></script>
JavaScript
// 1.打击<<d2时,左边框d1打开或关闭 // 2.查找触发事件的元素 d2
var d2 = document.getElementById("d2");
// 3.为d2绑定事件处理函数
d2.onclick = function () {
// 查找需要修改的函数
var d1 = document.getElementById("d1");
// 修改
// console.log(d2.textContent) // <<
// console.log(d2.innerHTML) // <<
if (d2.textContent == "<<") {
// d1.className = "hide";
// 修改 div 的内联样式
d1.style.width ="0px";
d2.textContent = ">>"
} else {
// d1.className = "show";
d1.style.width ="150px";
d2.textContent = "<<"
} }


完成!
JavaScript 读取修改元素 及 伸拉门案例的更多相关文章
- Selenium调用JavaScript修改元素属性
修改元素的style,主要是将一些隐性元素显示出来,让元素可被操作: JavascriptExecutor js = (JavascriptExecutor)driver; js.executeSc ...
- [javascript]javascript取得html元素,取得html样式,修改html样式
一.取得html元素 详情见:https://www.jb51.net/article/116460.htm 1.通过ID获取(getElementById) document.getElementB ...
- JavaScript--DOM修改元素的属性
一旦你获得了要修改的元素,可以有2种方式,来读取和修改它的属性:一种老的方式(它被更多的用户代理所支持)和一种新的DOM方法的方式.老的和新的用户代理都允许你以对象属性的方式获取和设置元素的属性. 先 ...
- JavaScript进阶(六)用JavaScript读取和保存文件
用JavaScript读取和保存文件 因为Google还不提供同步插件数据的功能,所以导入和导出插件配置就必须和文件打交道了.而出于安全原因,只有IE才提供访问文件的API:但随着HTML 5的到来, ...
- 使用jQuery匹配文档中所有的li元素,返回一个jQuery对象,然后通过数组下标的方式读取jQuery集合中第1个DOM元素,此时返回的是DOM对象,然后调用DOM属性innerHTML,读取该元素 包含的文本信息
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- JavaScrip——DOM操作(查找HTML元素/修改元素)
innerHTML 1.查找元素——document.getElementById("intro") 2.输出查找的结果: (1)var a=document.getElement ...
- javascript删除JSON元素
首先要搞清JSON的数据格式,我这里所说的JSON都是指javascript中的. JSON数据是由对象和数组数据结构组成,我们只要学会javascript中对对象和数组的删除方法即可对JSON项进行 ...
- js中cssText批量修改元素样式
平常编写代码,更改一个元素样式的时候,自己都是用 obj.style.width = "200px"; obj.style.position = "absolute&qu ...
- Dom修改元素样式
提纲:我们可以通过js来修改元素的大小,颜色,位置等样式 1.element.style 行内样式的操作 2.element.className ...
随机推荐
- 三种邻接表存图模板:vector邻接表、数组邻接表、链式前向星
vector邻接表: ; struct Edge{ int u,v,w; Edge(int _u=0,int _v=0,int _w=0){u=_u,v=_v,w=_w;} }; vector< ...
- HDU 2829 - Lawrence - [斜率DP]
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2829 T. E. Lawrence was a controversial figure during ...
- Linux free命令详解
前段时间有个项目的用C写的,性能测试时发现内存泄露问题.关于怎么观察内存使用问题,free是很好用的一个命令. 参数讲解 bash-3.00$ freetotal used f ...
- python3学习笔记(2)_list-tuple
# !/usr/bin/env python3 # -*- coding:utf-8 -*_ #list 和 tuple #list 是有序集合,可以用索引(下标)访问lsit中的每一个元素 #最后一 ...
- SVN里直接把本地目录纳入管理
如果本地有个已有的目录,要直接纳入SVN管理,怎么办呢?直接在Repository Browser里面 Add folder,但这样虽然把目录加到SVN,但本地目录没有纳入管理,你还要重新又下到本地才 ...
- 2018/03/25 每日一个Linux命令 之 df
Linux df命令用于显示目前在Linux系统上的文件系统的磁盘使用情况统计. 就像在windows下打开我的电脑一样会统计各个磁盘一样的情况 主要用于查看磁盘空间占用情况 -- [@hong:~] ...
- idea启动java Maven项目,出现" java: 程序包xxxx不存在"
今天运行Maven项目的时候,出现了,Error:(19, 17) java: 程序包tracetool不存在的情况 本人的解决办法: (1)首先确保maven pom文件不能报错,即文件上面不能有 ...
- LightOJ 1038 - Race to 1 Again(期望+DP)
题目链接:http://lightoj.com/volume_showproblem.php?problem=1038 题意是:给你一个N (1 ≤ N ≤ 105) 每次N都随机选一个因子d,然后让 ...
- mysql 数据库的操作
1.数据库的查看 1)查看mysql中所有的数据库 "show databases;" mysql> show databases; +---------------- ...
- (3.13)mysql基础深入——mysql日志分析工具之mysqlsla【待完善】
(3.13)mysql基础深入——mysql 日志分析工具之mysqlsla 关键字:Mysql日志分析工具.mysqlsla 常用工具 [1]mysqldumpslow:官方提供的慢查询日志分析工具 ...