javascript-第九节-键值或按钮控制div移动、轮播
来源:互联网 发布:中国远征军 知乎 编辑:程序博客网 时间:2024/06/05 04:35
1、在屏幕添加四个按钮,上下左右,来控制一个div的移动
2、通过键盘的上下左右键,来控制div的移动
3、实现轮播图:
方法一:setTimeout()
方法二:setInterval()
4、导航下拉(重点)
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>点击按钮操作上下移动</title></head><style type="text/css"> #content { position: absolute; left: 100px; top: 100px; width: 200px; height: 100px; background: palevioletred; }</style><body><input type="button" value="左" id="left"><input type="button" value="右" id="right"><div id="content"></div><script> var left = document.getElementById("left"); var right = document.getElementById("right"); var content = document.getElementById("content"); var index = 100; left.onclick = function () { index = index - 10; content.style.left = index + "px"; } right.onclick = function () { index = index + 10; content.style.left = index + "px"; }</script></body></html>
2、通过键盘的上下左右键,来控制div的移动
<!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8"> <title></title> <style> div { position: absolute; left: 100px; top: 100px; width: 100px; height: 100px; background-color: cadetblue; } </style></head><body><div id="a"></div><script> var div = document.getElementById("a"); var nowleft = 100; var nowtop = 100; document.onkeydown = function () {// alert(event.keyCode);// event.keyCode 事件的键值属性 if(event.keyCode==65){ nowleft= nowleft - 50; div.style.left = nowleft + "px"; } switch (event.keyCode) { case 37: nowleft = nowleft - 10; div.style.left = nowleft + "px"; break; case 38: nowtop = nowtop - 10; div.style.top = nowtop + "px"; break; case 39: nowleft = nowleft + 100; div.style.left = nowleft + "px"; break; case 40: nowtop = nowtop + 10; div.style.top = nowtop + "px"; break; } }</script></body></html>
3、实现轮播图:
方法一:setTimeout()
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>轮播图-clearTimeout</title></head><body><img src="image/index0.jpg" id="pic"><script> var pic=document.getElementById("pic"); //图片数字循环 var num=0; var str=0; function change(){ num=(num+1); //image是图片文件夹,index pic.src="image/"+"index"+num+".jpg"; str=setTimeout(change,1500); } setTimeout(change,1500); pic.onmouseover=function(){ clearTimeout(str); } pic.onmouseout=function(){ setTimeout(change,1500); }</script></body></html>
方法二:setInterval()
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>轮播图</title></head><body><img src="image/index0.jpg" id="pic"><script> var pic = document.getElementById("pic"); var num = 0; var loop=true; function change() { num = (num + 1) % 12; if (loop==true) { pic.src = "image/" + "index" + num + ".jpg"; } } setInterval(change,1500); pic.onmouseover=function(){ loop=false; } pic.onmouseout=function(){ loop=true; //setInterval(change,1000); }</script></body></html>
4、导航下拉(重点)
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>下拉导航</title> <style type="text/css"> body{ padding:0; margin: 0; } .nav ul { padding: 0; margin: 0; list-style-type: none; } .nav ul li { float: left; width: 100px; height: 40px; line-height: 40px; background-color: #6eb3d8; text-align: center; margin:0 5px; } .nav a { text-decoration: none; color: white; cursor: pointer; } .navNow { display: block; background-color: #7b5255; color: #999999; font-weight: bold; } .navlist ul{ clear: both; position: absolute; left: 220px; top:25px; list-style-type: none; padding: 0px 5px 0 5px; } .navlist ul li{ width: 100px; height: 40px; line-height: 40px; background-color: #7b5255; text-align: center; } .navlist a{ color: white; text-decoration: none; } </style></head><body><div class="nav"> <ul id="nav"> <!--<li><a href="" id="navNow">首页</a></li>--> <!--<li><a href="">关于我们</a></li>--> <!--<li><a href="">新闻中心</a></li>--> <!--<li><a href="">公司文化</a></li>--> <!--<li><a href="">联系我们</a></li>--> </ul></div><div class="navlist"> <ul id="navlist"> <!--<li><a href="">行业动态</a></li>--> <!--<li><a href="">行业新闻</a></li>--> <!--<li><a href="">公司文化</a></li>--> <!--<li><a href="">领导简介</a></li>--> </ul></div><script> var ul = document.getElementById("nav"); var arr = ["首页", "关于我们", "新闻中心", "公司文化", "联系我们"]; var arrlist=[ [], ["公司介绍","领导简介"], ["行业动态","行业新闻","行业动态","企业周刊"], ["公司活动","公司主旨"], ["联系我们","人才招聘"], ]; //存放所有的a标签,目的:给a添加鼠标滑过事件 var alla = ; for (var n = 0; n < arr.length; n++) { //添加li标签 var li = document.createElement("li"); //添加a标签 var a = document.createElement("a"); //给a添加标题 a.innerHTML = arr[n]; //把a添加到li中 li.appendChild(a); //把li添加到ul中 ul.appendChild(li); //把a标签加入到数组,以便给a添加鼠标滑过事件时用 alla.push(a); } //遍历所有的a标签-且添加onmouseover时间 for (var n = 0; n < alla.length; n++) { //初始默认显示第一个的状态 if (n == 0) { alla[0].className = "navNow"; } //给a添加onmouseover函数,进行鼠标滑过有状态值 alla[n].onmouseover=function(){ //遍历a,进行查询 for(var i=0;i<alla.length;i++){ //鼠标没有滑过没有选中的状态值 alla[i].className=""; } //鼠标滑过选中的状态值 this.className="navNow"; //开始操作二级菜单 var index=0; for(var j=0;j<alla.length;j++){ //获取一级菜单的下标 if(alla[j].className=="navNow"){ index=j; break; } } //添加二级 var ullist=document.getElementById("navlist"); ullist.style.left=110*index+"px"; var str=""; for(var m=0;m<arrlist[index].length;m++){ str=str+"<li><a href='#'>"+arrlist[index][m]+"</a></li>" } ullist.innerHTML=str; //当鼠标离开下拉菜单时,菜单不显示 ullist.onmouseout=function(){ ullist.style.display="none"; } //鼠标放上时,菜单显示 ullist.onmouseover=function(){ ullist.style.display="block"; } //鼠标放上 ul.onmouseover=function(){ ullist.style.display="block"; } //鼠标离开 ul.onmouseout=function(){ ullist.style.display="none"; } } }</script></body></html>
0 0
- javascript-第九节-键值或按钮控制div移动、轮播
- JavaScript控制div的移动跟着鼠标一起移动div
- JavaScript——控制div的移动
- Javascript控制DIV上下移动(仿265移动特效)
- 按钮控制div大小
- JavaScript——用键盘wasd控制div移动
- 键盘控制div移动
- 文字或图片跟随鼠标移动或键盘控制图片移动实例(javascript实现)
- 点击按钮移动的div
- JavaScript--利用setInterval或setTimeout实现背景颜色轮播
- div轮播
- javascript控制DIV显示
- IOS控制按钮的移动
- 如何用图片或按钮控制IE上下滚动条的移动???
- JS控制点击按钮图片向左或向右循环移动滚动效果
- 键盘控制DIV块移动
- javascript控制光标移动
- JavaScript中如何获取按钮所在DIV的ID或NAME?
- FPGA 130例-->例5.16 to 例8.5
- Linux下python升级至2.7步骤
- 关于C#相等运算符(==)重载的问题
- 接口的注意事项
- <<Effective C++>>读书笔记8: 定制new和delete
- javascript-第九节-键值或按钮控制div移动、轮播
- DB2 SQL Error: SQLCODE=-668, SQLSTATE=57016错误解决方法
- javascript--第九节-爱奇艺网站首页(轮播图)
- Google免费DNS服务器IP及全国主要DNS
- ListView适配不同item范例
- CentOS x64上Matlab R2015b的镜像安装方法与卸载
- Android组件(Broadcast Receiver)
- QtQuick学习笔记之QML自定义信号
- Chrome浏览器快捷键大全