页面上有一个div 100*100 颜色为黄色 按键盘上下左右键可以操作div移动 ctrl+键盘上下键可以放大缩小 ctrl+键盘左右键可以随机变颜色

 1 <body>
 2 <div id="w">
 3     <div class="n">按上键可以向上移动</div>
 4     <div class="n">按下键可以向下移动</div>
 5     <div class="n">按左键可以向左移动</div>
 6     <div class="n">按右键可以向右移动</div>
 7     <div class="n">ctrl+键盘上键可以放大</div>
 8     <div class="n">ctrl+键盘下键可以缩小</div>
 9     <div class="n">ctrl+键盘左右键可以随机变颜色</div>
10     <div id="box" style="width: 100px;height: 100px;background-color: #ff0;position: absolute;left: 100px;top: 100px; z-index: -1"></div>
11 </div>
12 <script>
13     var box = document.getElementById(‘box‘);
14     document.body.addEventListener(‘keydown‘, function (e) {
15         switch (e.keyCode) {
16             case 37:
17                 if (e.ctrlKey) {
18                     box.style.backgroundColor = ‘#‘ + (Math.random().toString(16)).substr(-6);
19                 } else {
20                     box.style.left = parseInt(box.style.left) - 6 + ‘px‘;
21                 }
22                 break;
23             case 39:
24                 if (e.ctrlKey) {
25                     box.style.backgroundColor = ‘#‘ + (Math.random().toString(16)).substr(-6);
26                 } else {
27                     box.style.left = parseInt(box.style.left) + 6 + ‘px‘;
28                 }
29                 break;
30             case 38:
31                 box.style.top = parseInt(box.style.top) - 6 + ‘px‘;
32                 if (e.ctrlKey) {
33                     box.style.width = parseInt(box.style.width) + 4 + ‘px‘;
34                     box.style.left = parseInt(box.style.left) - 2 + ‘px‘;
35                     box.style.height = parseInt(box.style.height) + 4 + ‘px‘;
36                     box.style.top = parseInt(box.style.top) + 4 + ‘px‘;
37                 }
38                 break;
39             case 40:
40                 box.style.top = parseInt(box.style.top) + 6 + ‘px‘;
41                 if (e.ctrlKey) {
42                     box.style.width = parseInt(box.style.width) - 4 + ‘px‘;
43                     box.style.left = parseInt(box.style.left) + 2 + ‘px‘;
44                     box.style.height = parseInt(box.style.height) - 4 + ‘px‘;
45                     box.style.top = parseInt(box.style.top) - 4 + ‘px‘;
46                 }
47                 break;
48         }
49         console.log(e.keyCode);
50     })
51 </script>
52 </body>
时间: 2024-07-31 08:14:59

页面上有一个div 100*100 颜色为黄色 按键盘上下左右键可以操作div移动 ctrl+键盘上下键可以放大缩小 ctrl+键盘左右键可以随机变颜色的相关文章

JS---Math.Random()*10--[0,10)随机变颜色

<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title>随机显示颜色</title> <style> #div1{ width: 100px; height: 100px; } </style> </head> <body > <div id="di

如何在页面上实现一个圆形的可点击区域?

三种解决方案: html标签.css实现. 纯js实现 方案一: 定义一个客户端图像映射.图像映射(image-map)指带有可点击区域的一幅图像. <img src="task6.jpg" width="1366" height="768" border="0" usemap="#Map" /> <map name="Map" id="Map"&g

编写一个函数,在页面上输出一个N行M列的表格,表格内容填充1~100的随机数字

function tab(n,m){ document.write("<table border=1>"); for(var i=1;i<=n;i++){ document.write("<tr>"); for(var j=1;j<=m;j++){ document.write("<td>"); document.write(numRandom(1,100)); document.write(&qu

做一个计时器示例 在页面上有一个文本框和一个普通按钮 在状态栏上显示,单击按钮,开始计时的提示信息 单击按钮时,在文本框显示计数的过程,同时要求按钮上的字,显示为“单击暂停” 此时单击按钮,暂停计时,同时按钮上的字显示为“继续计时”,要求这两种状态来回切换,来完成计数器的功能

2015-04-12 20:15:25 方法一; <script> var s=0; var timeout=0; status='点击按钮,开始计时'; function count(){ s++; time1.value=s; timeout=setTimeout('count();',100); } function onChange(){ if(timeout==0){ count(); time2.value='暂停计时'; status='点击按钮,暂停计时'; }else{ cl

浏览器渲染页面原理(看到一个网站写的不错 收录的,一起学习)

当了解web访问原理后,与前端工程师或页面重构师工作更为关系密切的应该是浏览器,WEB 页面运行在各种各样的浏览器当中,浏览器载入.渲染页面的速度直接影响着用户体验, 特别是浏览器渲染页面的原理,页面渲染就是浏览器将 HTML 代码根据 CSS 定义的规则显示在浏览器窗口中的这个过程,理解了原理就更会容易理解前端优化的一些准则. 主要过程:(主要参考文章:http://www.webskys.com/artilc/228.html) 1. 用户输入网址(假设是个 HTML 页面,第一次访问,无缓

页面上画按钮的四种方法

在一个页面上画一个按钮,有四种办法: <input type="button" /> 这就是一个按钮.如果你不写javascript 的话,按下去什么也不会发生. <input type="submit" /> 这样的按钮用户点击之后会自动提交 form,除非你写了javascript 阻止它. <button> 这个按钮放在 form 中也会点击自动提交,比前两个的优点是按钮的内容不光可以有文字,还可以有图片等多媒体内容.(当然

在页面上动态添加和删除【添加信息的文本框】

页面上的内容: 当点击添加或删除会做出相应的操作 页面的html代码 1 <li id="clid"> 2 <div> 3 姓名:<input type="text" name="guestName" class="dfinput" style="width: 150px;"/> 4     国别:<input name="guestState"

关于在页面上执行sql语句

在页面上执行sql语句,首先在页面上顶一个文本域,让用户输入需要执行的sql语句. html代码如下: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><title> New Document </title></head&

[修练营 jQuery]使用contactable达到在页面上寄送feedback mail给管理者

前言 我们常常有个需求,是类似提供客服信箱的功能,让使用者可以很方便的将宝贵的意见feedback给站方管理者. 最常看到的就是,在menu或是页面的footer上,加上一个客服信箱的连结, 或是自己写一个表单,可以帮忙寄送相关资讯给站方. 没错,现在jQuery也有类似这样的plug-in,而且真的相当漂亮,还搭配动画让页面表现的更生动. 这边我要介绍的plug-in叫做"contactable",目的就是在页面上安插一个表单,类似用书签夹着的效果, 点一下就会像把书签抽出来的效果,