目录

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的更多相关文章

  1. DOM 事件深入浅出(二)

    在DOM事件深入浅出(一)中,我主要给大家讲解了不同DOM级别下的事件处理程序,同时介绍了事件冒泡和捕获的触发原理和方法.本文将继续介绍DOM事件中的知识点,主要侧重于DOM事件中Event对象的属性 ...

  2. DOM 事件深入浅出(一)

    在项目开发时,我们时常需要考虑用户在使用产品时产生的各种各样的交互事件,比如鼠标点击事件.敲击键盘事件等.这样的事件行为都是前端DOM事件的组成部分,不同的DOM事件会有不同的触发条件和触发效果.本文 ...

  3. DOM事件

    在慕课网上学习了DOM事件探秘课程,特此整理了一下笔记. 慕课网DOM事件探秘课程地址:http://www.imooc.com/learn/138 事件 是文档或浏览器窗口中发生的特定的交互瞬间.[ ...

  4. 理解DOM事件流的三个阶段

    本文主要解决两个问题: 1.什么是事件流 2.DOM事件流的三个阶段 事件流之事件冒泡与事件捕获 在浏览器发展的过程中,开发团队遇到了一个问题.那就是页面中的哪一部分拥有特定的事件? 可以想象画在一张 ...

  5. 你真的了解DOM事件么?

    你真的了解DOM事件么? 我们大家都知道,人与人之间的交流可以通过语言,文字,肢体动作,面部微表情等,但是你知道Javascript和HTML之间是通过什么进行交互的么?你又知道Javascript和 ...

  6. [DOM Event Learning] Section 4 事件分发和DOM事件流

    [DOM Event Learning] Section 4 事件分发和DOM事件流 事件分发机制: event dispatch mechanism. 事件流(event flow)描述了事件对象在 ...

  7. dom事件与event对象总结

    1 事件:就是文档或浏览器窗口中发生的一些特定的交互瞬间.    tips:js和xhtml的交互是通过当用户或浏览器操作网页时发生的事件来处理的. 1.1 事件流:即事件的顺序.        事件 ...

  8. DOM事件简介--摘自admin10000

    Click.touch.load.drag.change.input.error.risize — 这些都是冗长的DOM(文档对象模型)事件列表的一部分.事件可以在文档(Document)结构的任何部 ...

  9. 从click事件理解DOM事件流

    事件流是用来解释页面上的不同元素接受一个事件的顺序,首先要明确两点: 1.一个事件的影响元素可能不止一个(同心圆理论),但目标元素只有一个. 2.如果这些元素都绑定了相同名称的事件函数,我们怎么知道这 ...

  10. DOM事件机制进一步理解

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name ...

随机推荐

  1. 深入理解JavaScript执行上下文、函数堆栈、提升的概念

    本文内容主要转载自以下两位作者的文章,如有侵权请联系我删除: https://feclub.cn/post/content/ec_ecs_hosting http://blog.csdn.net/hi ...

  2. ML paper 导图笔记.md

    <Learning Structured Representation for Text Classification via Reinforcement Learning> <基于 ...

  3. Codeforces 884E E. Binary Matrix

    题 OvO http://codeforces.com/contest/884/problem/E 884e 解 考虑并查集,每个点向上方和左方的点合并,答案即为1的总数减去需要合并的次数 由于只有1 ...

  4. vue路由跳转push,replace,go

    this.$router.replace({  path: "/subpagest" });//不会向 history 添加新记录,而是跟它的方法名一样 —— 替换掉当前的 his ...

  5. Linux硬盘安装步骤

    网上找了许多用DVD镜像硬盘安装FC5的文章,可是都不系统,为了全中国的广大菜鸟们,云计算架构师 抽了很多时间来写这篇详细的安装文章,希望对初次接触LINUX或者刚刚入门的朋友有所帮助. 一.预备知识 ...

  6. poj 2376 Cleaning Shifts 贪心 区间问题

    <pre name="code" class="html"> Cleaning Shifts Time Limit: 1000MS   Memory ...

  7. CentOS8编译openocd-0.10.0

    1.sudo yum install libusbx-devel 2. ./configure --prefix=$HOME/openocd-0.10.0 --enable-jlink CFLAGS= ...

  8. Java集合框架之接口Collection源码分析

    本文我们主要学习Java集合框架的根接口Collection,通过本文我们可以进一步了解Collection的属性及提供的方法.在介绍Collection接口之前我们不得不先学习一下Iterable, ...

  9. JIRA绑定邮箱

    [管理-系统-外发邮件] 之前配置QQ邮箱没有成功,后来使用阿里邮箱一次就成功了 [保存]成功后可以测试一下

  10. finally应用

    finally作为异常处理的一部分,它只能用在try/catch语句中,并且附带一个语句块,表示这段语句最终一定会被执行(不管有没有抛出异常),经常被用在需要释放资源的情况下. 之前在写爬虫的时候数据 ...