DOM事件练习 I
目录
input框动态显示事件
<head>
<meta charset="UTF-8">
<title>动态显示时间</title>
<style>
input{width:200px;}
</style>
</head>
<body>
<input type="text" id="time">
<button id="switch">开始</button>
</body>
<script>
var btn = document.getElementById('switch');
btn.onclick = function () {
switch (this.innerText) {
case '开始':
this.innerText = '停止';
timer1 = setInterval(update,1000);
break;
case '停止':
this.innerText = '开始';
clearInterval(timer1);
break;
}
};
function update() {
var t = document.getElementById('time');
var dt = new Date();
t.value = dt.toLocaleString();
}
</script>
input框动态显示事件
红绿灯
<head>
<meta charset="UTF-8">
<title>事件-红绿灯</title>
<style>
.fa{display: inline-block; padding: 5px;border-radius: 10px;border-color: darkgray;border-style: solid}
.div0{width:100px;height:100px;border-radius: 50px; float: left;
border-color: white;background-color: gray;
display: inline-block;margin: 0;}
.div2{background-color: green;}
.div1{background-color: red;}
.div3{background-color: yellow;}
</style>
</head>
<body>
<div class="fa">
<div id="d0" class="div0 div1"></div>
<div id="d1" class="div0"></div>
<div id="d2" class="div0"></div>
</div>
<script>
function change()
{
var tem = document.getElementsByClassName('div0');
if (tem[0].classList.contains('div1'))
{
tem[0].classList.remove('div1');
tem[1].classList.add('div2');
}
else if (tem[1].classList.contains('div2'))
{
tem[1].classList.remove('div2');
tem[2].classList.add('div3');
}
else if (tem[2].classList.contains('div3'))
{
tem[2].classList.remove('div3');
tem[0].classList.add('div1');
}
}
setInterval(change,1000);
</script>
</body>
红绿灯模拟
顶部广告栏关闭
<head>
<meta charset="UTF-8">
<title>顶部广告关闭</title>
<style>
body{margin:0 ;}
.ad{ position:fixed ; top:0; width: 100%; height: 100px;
background-color: darkblue;opacity: 0.5}
.ad_content{position: fixed;top:0; padding:20px;color: #53ff09}
#close{position: fixed;top: 0; right: 0; background-color: lightyellow;
height: 20px;width:20px;text-align:center; line-height: 20px;font-size:30px}
.content{height: 1000px;background-color: gray}
</style>
</head>
<body>
<div class="ad" id="ad">
<div class="ad_content">
LOL新赛季即将开启,敬请期待
</div>
<div id="close">
x
</div>
</div>
<div class="content">
详情请关注LOL世界锦标赛官方微博
详情请关注LOL世界锦标赛官方微博
详情请关注LOL世界锦标赛官方微博
详情请关注LOL世界锦标赛官方微博
详情请关注LOL世界锦标赛官方微博
详情请关注LOL世界锦标赛官方微博
详情请关注LOL世界锦标赛官方微博
详情请关注LOL世界锦标赛官方微博
详情请关注LOL世界锦标赛官方微博
详情请关注LOL世界锦标赛官方微博
详情请关注LOL世界锦标赛官方微博
详情请关注LOL世界锦标赛官方微博
</div>
</body>
<script>
var closebtn = document.getElementById('close');
closebtn.onclick = function () {
var ad= document.getElementById('ad');
ad.style.display = 'none';
}
</script>
顶部广告
鼠标悬停IMG上时,更换另一张图片
//需求:鼠标放到img上,更换为另一张图片,也就是修改路径(src的值)。
//步骤:
//1.获取事件源
//2.绑定事件
//3.书写事件驱动程序 <body>
<img src="1.jpg" id="box" style="cursor: pointer;border: 1px solid #ccc;" >
</body>
<script>
var img = document.getElementById('box');
img.onmouseover = function () {
img.src = '2.jpg';
};
img.onmouseout = function () {
img.src = '1.jpg'
};
</script>
鼠标悬停更换图片
悬浮框自动出现
<head>
<meta charset="UTF-8">
<title>自动出现</title>
<style>
.d1{width:70px; height:25px;background-color: #cccccc;position: fixed;
bottom: 50px;right: 50px;text-align: center;line-height: 25px;border-radius: 5px;}
.d2{display: none}
.a1{text-decoration: none; color: #ff6700}
</style>
</head>
<body>
<div style="width: 100% ; height: 2000px;background-color: gray"></div>
<div class="d1 d2" id="d1"><a class="a1" id="a1" href="#">回到顶部</a></div>
</body>
<script>
var sl = document.getElementById('d1');
window.onscroll = function () {
console.log(document.documentElement.scrollTop);
if (document.documentElement.scrollTop>700){
sl.classList.remove('d2');
}
else { sl.classList.add('d2'); }
};
</script>
// 行内实现
<body>
<div style="height: 4000px;width:20px;background-color: #ff6700"></div>
<p><a id="a1" style="position: fixed; bottom: 200px; z-index: 100; background-color: gray; right: 100px; color: white; display: block; padding: 5px; border-radius: 5px; text-decoration: none;" href="#">回到顶部</a></p>
</body>
<script>
var ab= document.getElementById('a1');
window.onscroll = function () {
console.log(document.documentElement.scrollTop);
console.log(ab.style.display);
if (document.documentElement.scrollTop>700){
ab.style.display = 'block';
}
else { ab.style.display = 'none'; }
};
</script>
</html>
悬浮框自动出现
模态框案例
需求:打开网页时有一个普通的按钮,点击当前按钮显示一个背景图,中心并弹出一个弹出框,点击X的时候会关闭当前的模态框。
<!DOCTYPE html>
<html lang="zh-ch">
<head>
<meta charset="UTF-8">
<title>模态框</title>
<style>
*{margin:0;padding :0;}
html,body{height: 100%;}
#box{width:100%;height:100%;background: rgba(0,0,0,.3);}
#content{position: relative;top:150px;width:400px;height: 200px;
line-height: 200px;text-align: center;
color: red; background-color: #fff;margin:auto; }
#span1{position:absolute;background-color: red;top: 0 ;right:0;width: 30px;
height: 30px;text-align: center;color:#fff;line-height: 30px;}
</style>
</head>
<body>
<button id="btn">弹出</button>
</body>
<script type="text/javascript">
//获取dom元素:1获取事件源
var oBtn = document.getElementById('btn');
//创建弹出模态框的相关dom对象
var oDiv = document.createElement('div');
var oP = document.createElement('p');
var oSpan = document.createElement('span');
//设置属性
oDiv.id = 'box';
oP.id = 'content';
oP.innerHTML='模态框弹出显示的内容';
oSpan.innerText = 'X';
oSpan.id = 'span1';
//追加元素
oDiv.appendChild(oP);
oP.appendChild(oSpan);
//设置点击弹窗按钮 弹出模态框
oBtn.onclick = function () {
this.parentNode.insertBefore(oDiv,oBtn);
};
//设置关闭按钮,关闭模态框
oSpan.onclick = function () {
oDiv.parentNode.removeChild(oDiv)
}
</script>
</html>
模态框
DOM事件练习 I的更多相关文章
- DOM 事件深入浅出(二)
在DOM事件深入浅出(一)中,我主要给大家讲解了不同DOM级别下的事件处理程序,同时介绍了事件冒泡和捕获的触发原理和方法.本文将继续介绍DOM事件中的知识点,主要侧重于DOM事件中Event对象的属性 ...
- DOM 事件深入浅出(一)
在项目开发时,我们时常需要考虑用户在使用产品时产生的各种各样的交互事件,比如鼠标点击事件.敲击键盘事件等.这样的事件行为都是前端DOM事件的组成部分,不同的DOM事件会有不同的触发条件和触发效果.本文 ...
- DOM事件
在慕课网上学习了DOM事件探秘课程,特此整理了一下笔记. 慕课网DOM事件探秘课程地址:http://www.imooc.com/learn/138 事件 是文档或浏览器窗口中发生的特定的交互瞬间.[ ...
- 理解DOM事件流的三个阶段
本文主要解决两个问题: 1.什么是事件流 2.DOM事件流的三个阶段 事件流之事件冒泡与事件捕获 在浏览器发展的过程中,开发团队遇到了一个问题.那就是页面中的哪一部分拥有特定的事件? 可以想象画在一张 ...
- 你真的了解DOM事件么?
你真的了解DOM事件么? 我们大家都知道,人与人之间的交流可以通过语言,文字,肢体动作,面部微表情等,但是你知道Javascript和HTML之间是通过什么进行交互的么?你又知道Javascript和 ...
- [DOM Event Learning] Section 4 事件分发和DOM事件流
[DOM Event Learning] Section 4 事件分发和DOM事件流 事件分发机制: event dispatch mechanism. 事件流(event flow)描述了事件对象在 ...
- dom事件与event对象总结
1 事件:就是文档或浏览器窗口中发生的一些特定的交互瞬间. tips:js和xhtml的交互是通过当用户或浏览器操作网页时发生的事件来处理的. 1.1 事件流:即事件的顺序. 事件 ...
- DOM事件简介--摘自admin10000
Click.touch.load.drag.change.input.error.risize — 这些都是冗长的DOM(文档对象模型)事件列表的一部分.事件可以在文档(Document)结构的任何部 ...
- 从click事件理解DOM事件流
事件流是用来解释页面上的不同元素接受一个事件的顺序,首先要明确两点: 1.一个事件的影响元素可能不止一个(同心圆理论),但目标元素只有一个. 2.如果这些元素都绑定了相同名称的事件函数,我们怎么知道这 ...
- DOM事件机制进一步理解
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name ...
随机推荐
- Mybatis 解决问题的记录与博客
问题:mybatis 空值映射的问题Mybatis在使用resultMap来映射查询结果中的列,如果查询结果中包含空值的列(不是null),则Mybatis在映射的时候,不会映射这个字段 https: ...
- kettle案例实现
案例一.把stu1的数据按id同步到stu2,stu2有相同id则更新数据 在kettle中新建转换 点击左上角文件—新建—转换到核心对象界面,点击输入,找到表输入拖拽到中间 双击表输入,在数据库连接 ...
- Java-IPDeal工具类
/** * IP处理类 */ import java.sql.*; public class IPDeal { /** * 通过ip地址查询地区名称 * @param strip * @return ...
- 进击JavaScript核心 --- (3)面向对象
JS中的对象定义为:无序属性的结合,其属性可以包含基本值.对象或者函数 1.定义对象的方式 (1).Object构造函数 var student = new Object(); student ...
- BZOJ 3143: [Hnoi2013]游走 概率与期望+高斯消元
Description 一个无向连通图,顶点从1编号到N,边从1编号到M.小Z在该图上进行随机游走,初始时小Z在1号顶点,每一步小Z以相等的概率随机选 择当前顶点的某条边,沿着这条边走到下一个顶点,获 ...
- 2019暑假集训 windy数
题目描述 Windy 定义了一种 Windy 数:不含前导零且相邻两个数字之差至少为2的正整数被称为 Windy 数. Windy 想知道,在A和B之间,包括A和B,总共有多少个 Windy 数? 输 ...
- JavaWeb-SpringBoot_(下)腾讯云点播服务之视频的显示-demo
腾讯视频云点播 传送门 项目在腾讯云点播服务之视频的上传(上)[附源码]的基础上添加了两个html页面 此视频 播放传送门 (播放视频GIF会超过10M...) package com.Gary.v ...
- springboot @Configuration配置类里面使用@Value获取不到.yml配置文件属性的值
之前一个项目里面分为很多子工程的那种结构,要求让我改成一个项目的结构.我这边手动将代码合并之后出现下面的这种问题,然后尝试进行用各种方式解决 Error creating bean with name ...
- Java中的多线程技术全面详解
本文主要从整体上介绍Java中的多线程技术,对于一些重要的基础概念会进行相对详细的介绍,若有叙述不清晰或是不正确的地方,希望大家指出,谢谢大家:) 为什么使用多线程 并发与并行 我们知道,在单核机器上 ...
- phpmyadmin 导入sql报错(sql为phpstudy内置数据库导出来)
解决方法 1.打开sql,把头部注释去掉