显示隐藏表单文本内容
<input type="text" value="手机">
         var text = document.querySelector("input")
// 获取焦点
text.onfocus = function () {
if (this.value === '手机') {
this.value = ''
}
}
// 失去焦点
text.onblur = function () {
if (this.value === '') {
this.value = '手机'
}
}

通过element.className获取修改元素样式

 <div class="first" id="conter">文本</div>
var conter = document.getElementById("conter")
conter.onclick = function () {
// 通过修改元素的ClassName更改元素的样式适用于样式多或者繁杂的情况下
this.className = 'change'
// 如果想要保留之前的class
this.className = 'first change'
}

效果图

密码框错误提示

<div class="register">
<input type="password" id="ipt">
<p class="message" id="message">请输入6-12位密码</p>
</div>
   var ipt = document.getElementById("ipt")
var message = document.getElementById("message")
ipt.onblur = function () {
// 根据ipt.value长度判断
if (this.value.length < 6 || this.value.length > 12) {
message.className = 'message wrong'
message.innerHTML = '您输入的位数不对要求6~12位'
} else {
message.className = 'message right'
message.innerHTML = '您输入的正确'
}
}

效果图

css代码:

 <style>
.box {
background-image: url(../imges/TB1eiXTXlTH8KJjy0FiXXcRsXXa-24-595.png);
background-repeat: no-repeat;
} .change {
font-size: 203px;
} .register {
width: 600px;
margin: 100px auto;
} .message {
display: inline-block;
font-size: 12px;
color: #999;
padding-left: 20px;
} .wrong {
color: red;
} .right {
color: green; }
</style>

百度换肤效果

       <ul class="baidu">
<li><img src="../imges/business-pic3.jpg" alt=""></li>
<li><img src="../imges/business-pic4.jpg" alt=""></li>
</ul>

           var imgs = document.querySelector(".baidu").querySelectorAll("img")
// 给每个可以换肤的图片循环注册点击事件
for (var i = 0; i < imgs.length; i++) {
imgs[i].onclick = function () {
// 点击图片的路径
// 把这个路径给body就可以了
document.body.style.backgroundImage = 'url(' + this.src + ')'
}
}

效果图

表格

 <table>
<thead>
<tr>
<th><input type="checkbox" id="j_cbAll"></th>
<th>2</th>
<th>1</th>
<th>2</th>
<th>1</th>
<th>2</th>
</tr>
</thead>
<tbody id="j_tb">
<tr>
<td><input type="checkbox"></td>
<td>c</td>
<td>c</td>
<td>c</td>
<td>c</td>
<td>c</td>
</tr>
<tr>
<td><input type="checkbox"></td>
<td>c</td>
<td>c</td>
<td>c</td>
<td>c</td>
<td>c</td>
</tr>
</tbody>
</table>

表格隔行变色

   // 获取的是tbody中的行
var trs = document.querySelector("tbody").querySelectorAll("tr")
for (var i = 0; i < trs.length; i++) {
// 鼠标经过
trs[i].onmousemove = function () {
this.className = 'bg'
}
// 鼠标离开
trs[i].onmouseout = function () {
this.className = ''
}
}

表格全选

 var j_cbAll = document.getElementById("j_cbAll")
var ipt = document.getElementById("j_tb").getElementsByTagName("input")
j_cbAll.onclick = function () {
// 得到当前复选框的状态
console.log(this.checked);
for (var i = 0; i < ipt.length; i++) {
ipt[i].checked = this.checked
}
}
// 下面按钮影响上面按钮
for (var j = 0; j < ipt.length; j++) {
ipt[j].onclick = function () {
// flag控制全选按钮是否选中
var flag = true;
// 每次发生点击都要检查是否全选中
for (var a = 0; a < ipt.length; a++) {
if (!ipt[a].checked) {
flag = false;
break; //退出for循环 可以提高效率 只要有一个没有选中剩下的就不需要循环判断了
}
}
j_cbAll.checked = flag
}
}

效果图

css代码:
         body {
background-image: url(../imges/erwm.jfif);
background-repeat: no-repeat;
} .baidu {
width: 200px;
height: 100px;
margin: 0 auto;
list-style: none; } .baidu img {
width: 100px;
height: 100px;
float: left;
} .bg {
background-color: pink;
}

JS DOM操作案例的更多相关文章

  1. JS DOM操作(创建、遍历、获取、操作、删除节点)

    创建节点 <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="u ...

  2. js dom 操作

    JS的DOM操作   1DOM是文档对象模型,这种模型为树模型:文档是指标签文档,对象是指文档中每个元素:模型是指抽象化的东西. 2间隔与延迟间隔执行一段代码(函数):window.setInterv ...

  3. JS—DOM操作

    节点分为三类: 1.元素节点:标签<div></div> 2.文本节点:标签内的纯文本. 3.属性节点:标签内的属性,id或class 查找元素: getElementById ...

  4. js——DOM操作(一)

    DOM:Document Object Model  文档对象模型 文档:html页面 文档对象:页面中元素 文档对象模型:定义  为了能够让程序(js)去操作页面中的元素 DOM会把文档看作是一棵树 ...

  5. JS DOM操作 函数 事件 阻止事件冒泡

    一 函数 1.字符串函数 s.tolowerCase( ):    -- 变小写 s.toupperCase( ):   -- 变大写 s.substr( 2 , 8 ):     -- 截取     ...

  6. JS DOM操作(五) Window.docunment对象——操作元素

    定位: var a = document.getElementByIt( "id" ) 同辈元素 var b = a.nextSibling;            -- 找 a ...

  7. JS DOM操作(二) Window.docunment对象——操作样式

    一 对元素的定位 在 js 中可以利用 id.class.name.标签名进行元素的定位 id.class  用在客户端 name  用在服务端 用 id 定位                  -- ...

  8. JS DOM操作(一) 对页面的操作

    DOM ——文档对象模型(Document Object Model)是表示和处理一个HTML或XML文档的常用方法. 在网页上,组织页面(或文档)的对象被组织在一个树形结构中,用来表示文档中对象的标 ...

  9. js dom 操作技巧

    1.创建元素 创建元素:document.createElement() 使用document.createElement()可以创建新元素.这个方法只接受一个参数,即要创建元素的标签名.这个标签名在 ...

随机推荐

  1. java 基本语法(十六)Lambda (三)函数式接口

    方法引用1.理解:方法引用可以看做是Lambda表达式深层次的表达.换句话说,方法引用就是Lambda表达式,也就是函数式接口的一个实例,通过方法的名字来指向一个方法. 2.使用情境:当要传递给Lam ...

  2. 并发编程之关键字(synchronized、volatile)

    并发编程主要设计两个关键字:一个是synchronized,另一个是volatile.下面主要讲解这两个关键字,并对这两个关机进行比较. synchronized synchronized是通过JMV ...

  3. .Net Core 读取文件中文乱码

    首先,要知道.Net Core和.Net Framework两个环境下很多东西是不同的,接下来要说的这个就是其中一个. Encoding.Default,在  .NET Framework 中,Def ...

  4. sanri-tools-maven 企业软件开发工具集

    9420 开发工具包 sanri-tools-maven 是一个开源的用于企业开发的工具包,重点想解决项目开发中一些比较麻烦的问题 根据表和模板生成相应代码:一些身份证,企业代码,车架号的验证与生成: ...

  5. (6)webpack使用babel插件的使用

    为什么要使用babel插件? 首先要了解babel插件是干嘛的,随着js的语法规范发展,出现了越来越多的高级语法,但是使用webpack打包的时候,webpack并不能全部理解这些高级语法,需要我们使 ...

  6. vue如何使用excel导出后台数据

    let params = { // 请求参数 要下载Excel的id 'id':this.excelId }; //导入的接口名 api_excel_exportExcel().then(res =& ...

  7. 题解 洛谷 P4143 【采集矿石】

    对于一个固定的左端点,右端点向右移动时,其子串权值和不断增大,字典序降序排名不断减小,因此对于一个左端点,最多存在一个右端点使其满足条件. 所以可以枚举左端点,然后二分右端点的位置,权值和通过前缀和来 ...

  8. Redis(一)简介及安装、测试

    一.Redis简介: 关于关系型数据库和nosql数据库 关系型数据库是基于关系表的数据库,最终会将数据持久化到磁盘上,而nosql数据 库是基于特殊的结构,并将数据存储到内存的数据库.从性能上而言, ...

  9. liunx安装和部署nacos配置中心

    1.下载https://github.com/alibaba/nacos/releases  nacos-server-1.3.1.tar.gz  源码包2.上传到liunx服务器   /usr/lo ...

  10. 利用updatexml()报错注入mysql

    基本介绍一下updatexml() updatexml(XML_document, XPath_string, new_value) XML_document是文档对象的名称 XPath_string ...