一个JS的小练习

目的是让一个DIV小格子在页面中跑起来并且变色

 1  <style>
 2         * {
 3             margin: 0px;
 4             padding: 0px;
 5         }
 6
 7         #DIV1 {
 8             position: relative;
 9             width: 50px;
10             height: 50px;
11             background-color: red;
12         }
13     </style>
14 </head>
15 <body>
16     <form id="form1" runat="server">
17         <div id="DIV1"></div>
18     </form>
19 </body>
20 </html>
21 <script>
22     var C = new Array();//定义一个数组放置颜色
23     C[0] = ‘green‘;
24     C[1] = ‘yellow‘;
25     C[2] = ‘black‘;
26     C[3] = ‘navy‘;
27     C[4] = ‘blue‘;
28     C[5] = ‘red‘;
29     var num = 0;//设置一个变量记录颜色变化的次数以及取颜色在数组中所对应的索引
30     var num1 = 0;//设置几个变量记录函数的执行次数
31     var div = document.getElementById(‘DIV1‘);//获取DIV
32     function F() {
33         if (num1 % 10 == 0) {//控制颜色的变化速度
34             div.style.backgroundColor = C[num];//改变颜色
35             num++;
36             if (num == C.length) {
37                 num = 0;//颜色变化次数达到数组长度时归零重新记录
38             }
39         }
40         div.style.left = div.offsetLeft + 10 + ‘px‘;//DIV横向移动10个像素
41         if (div.offsetLeft > 1300) {//移动1300像素时换行加横向位置归零
42             div.style.left = 0 + ‘px‘;
43             div.style.top = div.offsetTop + 50 + ‘px‘;
44         }
45         if (div.offsetTop > 500) {//纵向达到500时DIV回到原点
46             div.style.left = 0 + ‘px‘;
47             div.style.top = 0 + ‘px‘;
48         }
49         num1++;
50     }
51     window.setInterval(‘F()‘, 20);//每20毫秒执行一次函数
52 </script>
时间: 2024-10-14 14:01:31

一个JS的小练习的相关文章

一个js小游戏----总结

花了大概一天左右的功夫实现了一个js小游戏的基本功能,类似于“雷电”那样的小游戏,实现了随即怪物发生器,碰撞检测,运动等等都实现了,下一个功能是子弹轨迹,还有其他一些扩展功能,没有用库,也没有用webGl之类的,单纯的逻辑+对DOM的操作,算是一次试手吧,之所以没有继续去完善,是因为想要整合一下,各个模块要更清晰,大体的设计是按MVC来的,但是对控制器那一块还不满意,设计过程中比较得意的是碰撞检测吧,因为我用了一个数组来维护怪物的生灭,怪物产生则数组push,怪物消失则用splice来从数组中删

用backbone实现的一个MVC的小demo

一.Apache配置 本实例需要使用php支持.要现在Apache中配置虚拟目录,在Apache下的httpd-vhosts.conf文件中添加如下代码 <VirtualHost *:80> DocumentRoot "D:/htdocs/backbone_demo" ServerName www.backbonedemo.cn </VirtualHost> 在windows的hosts文件中添加配置,hosts文件的位置在c:\windows\system32

【翻译】要理解Ext JS 5小工具

原版的:Understanding Widgets in Ext JS 5 在Ext JS 5,引入了新的"widgetcolumn",支持在网格的单元格中放置组件. 同一时候,还在Ext JS 5引入了一种新的被称为"小部件"的轻量级组件. 在Ext JS 5中,已包括了几个小部件,在本文将告诉你怎样轻松的去打造自己的小部件. 为了说明当中的关键概念.在文中将创建一个简单的名为"ratings"的例如以下图所看到的的小部件: 入门 与经常使用的

JS firebug小技巧

实际上前端的发展与进步也离不开浏览器的支持,而对于开发人员来讲,浏览器最好的支持,就是对于debug的良好支持,甚至在某些后续接手的项目中,前端的debug甚至可以解决好多问题--不说了,都是泪啊!还是说下firefox下的firebug吧.虽然ff内置一个调试的功能,但是,感觉不完善,对于开发人员来讲,根本不够用,于是ff下还是推荐firebug,老牌的前端debug工具,好用!而IE.Chrome都有很不错的工具支持,基本够用,但是用惯了ff的我,还是坚挺在firebug下. 1.使用"de

Js 常用小代码

//判断一个汉子等于两个字符 function getByteLen(val) { var len = 0; for (var i = 0; i < val.length; i++) { var a = val.charAt(i); if (a.match(/[^\x00-\xff]/ig) != null) { len += 2; } else { len += 1; } } return len; } Js 常用小代码

在VS中让一个JS文件智能提示另一个JS文件中的成员2--具体引用

我们知道,在html中,利用<script language="javascript" type="text/javascript" src="./script.js"></script>引入的两个js是不可以相互调用的.那么该如何解决呢?当然,你可以将代码通通copy过来,也许你并不喜欢这样. 例如有这样一个html,里面有一个按钮,当按下时调用b.js文件中的方法b().而b()中又要调用a.js文件中的方法a().若

Call Me By Your Name - node.js的小美好

个人总结:读完这篇文章需要20分钟 Call Me By Your Name - node.js的小美好 node的出现,真是让用惯js的前端工程师遇见了爱情,进而大踏步的走向了后端,尽管有时候会被质疑,不被理解.那又有什么关系. 本文是<一站到底 ---前端基础之网络>代码的整理.但也是一篇独立的node零基础学习笔记. 首先你需要安装node环境.大家自己去看教程就好.本文和函数式编程那篇文章是一样的思路.我们先用先实现.如果有机会我们回过头再来补理论,其实API也没啥需要补,有时间我们写

JS与小程序页面生命周期

Page({ /** * 页面的初始数据 */ data: { }, /** * 生命周期函数--监听页面加载 */ onLoad: function (options) { }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady: function () { }, /** * 生命周期函数--监听页面显示 */ onShow: function () { }, /** * 生命周期函数--监听页面隐藏 */ onHide: function () { }, /** * 生

JS代码优化小技巧

下面介绍一种JS代码优化的一个小技巧,通过动态加载引入js外部文件来提高网页加载速度 [基本优化] 将所有需要的<script>标签都放在</body>之前,确保脚本执行之前完成页面渲染而不会造成页面堵塞问题,这个大家都懂的.   [合并JS代码,尽可能少的使用script标签] 最常见的方式就是带代码写入一个js文件中,让页面只使用一次<script></script>标签来引入   [无堵塞加载JS] 通过给script标签增加 defer属性或者是 a