用四个符号(-、\、|、/) 来模拟不断旋转

一个简单的loading效果,用四个符号(-、\、|、/) 来模拟一个不断旋转的小东东,以提示用户当前正在载入中,ArcLive 上为玩家建立连线时便是这样显示的,呵呵。效果如下:

载入中... \

JavaScript Code:

view source

print?

01 <script type="text/javascript">
02 // <![CDATA[
03 function easy_loading(id)
04 {
05     var symbol = [‘-‘, ‘\\‘, ‘|‘, ‘/‘],
06         elem = document.getElementById(id),
07         i = 0;
08     (function __func() {
09         elem.innerHTML = symbol[i++ % 4];
10         setTimeout(__func, 200);
11     })();
12 }
13 easy_loading(‘loadin‘);
14 // ]]>
15 </script>

为了避免可能出现的阻塞浏览器线程的情况,这里用setTimeout 代替了setInterval。

让人想起了DOS下QBasic和FoxBase那种远去的亲切吧 :)大都会娱乐城

setTimeout()的使用方法

setTimeout (表达式,延时时间)、setTimeout(表达式,交互时间),延时时间/交互时间是以豪秒为单位的(1000ms=1s)。

setTimeout  在执行时,是在载入后延迟指定时间后,去执行一次表达式,仅执行一次。setTimeout 在执行时,它从载入后,每隔指定的时间就执行一次表达式。

下面是基本用法。

执行一段代码:

view source

print?

1 var i=0;
2 setTimeout("i+=1;alert(i)",1000);

执行一个函数:

view source

print?

1 var i=0;
2 setTimeout(function(){i+=1;alert(i);},1000);

下面再来一个执行函数的:

view source

print?

1 var i=0;
2 function test(){
3     i+=1;
4     alert(i);
5 }
6 setTimeout("test()",1000);

setTimeout的原型是这样的:iTimerID = window.setTimeout(vCode, iMilliSeconds [, sLanguage])

用setTimeout实现setInterval的功能

思路很简单,就是在一个函数中调用不停执行自己,有点像递归。

view source

print?

1 var i=0;
2 function xilou(){
3     i+=1;
4     if(i>10){alert(i);return;}
5     setTimeout("xilou()",1000);
6     //用这个也可以
7     //setTimeout(xilou,1000);
8 }
时间: 2024-10-16 10:56:33

用四个符号(-、\、|、/) 来模拟不断旋转的相关文章

JavaWeb学习总结(四十九)——简单模拟Sping MVC

在Spring MVC中,将一个普通的java类标注上Controller注解之后,再将类中的方法使用RequestMapping注解标注,那么这个普通的java类就够处理Web请求,示例代码如下: 1 /** 2 * 使用Controller注解标注LoginUI类 3 */ 4 @Controller 5 public class LoginUI { 6 7 //使用RequestMapping注解指明forward1方法的访问路径 8 @RequestMapping("LoginUI/Lo

补基础:自学:计算机科学导论 第四章 数据运算

4.1 逻辑运算:指那些应用于模式中的一个二进制位,或在两个模式中相应的两个二进制位的相同基本运算. 4.1.1 位层次上的逻辑运算 0 代表逻辑 假, 1 代表逻辑 真. 4种操作: 非(NOT):只有一个输入 如果输入是0, 则输出为1.反之亦然 应用:对整个模式求反 与(AND)有两个输入 如果输入都是1, 则输出为1.输入中只要有一位是0,则结果为0 应用:把一个位模式的指定位复位(置0).这种情况下,第二个输入称为掩码,掩码中的0位对第一个输入中相应的位进行复位. 或(OR)有两个输入

树的插入、删除、旋转归纳

AVL 树的插入.删除.旋转归纳 参考链接: http://blog.csdn.net/gabriel1026/article/details/6311339 1126号注:先前有一个概念搞混了: 节点的深度 Depth 是指从根节点到当前节点的长度: 节点的高度 Height 是指从当前节点向下,到子孙中所有叶子节点的长度的最大值. 之前简单了解过 AVL 树,知道概念但一直没动手实践过.Now AVL 树是二叉搜索树的一种.二叉搜索树的规则就是:每个节点的 left child 都比自己小,

AVL旋转树

执行插入操作可能出现不平衡的情况,当平衡二叉树.AVL这树是一种自平衡二叉树,使二叉树又一次保持平衡.而且查找.插入和删除操作在平均和最坏情况下时间复杂度都是O(log n) AVL树的旋转一共同拥有四种情形.注意全部旋转情况都是环绕着使得二叉树不平衡的第一个节点展开的. 1. LL型 平衡二叉树某一节点的左孩子的左子树上插入一个新的节点,使得该节点不再平衡.这时仅仅须要把树向右旋转一次就可以,如图所看到的.原A的左孩子B变为父结点,A变为其右孩子,而原B的右子树变为A的左子树,注意旋转之后Br

屏幕旋转与Transform

iTouch,iPhone,iPad设置都是支持旋转的,如果我们的程序能够根据不同的方向做出不同的布局,体验会更好. 如何设置程序支持旋转呢,通常我们会在程序的info.plist中进行设置Supported interface orientations,添加我们程序要支持的方向,而且程序里面每个viewController也有方法 supportedInterfaceOrientations(6.0及以后) shouldAutorotateToInterfaceOrientation(6.0之

以AVL树为例理解二叉树的旋转(Rotate)操作

树旋转是在二叉树中的一种子树调整操作, 每一次旋转并不影响对该二叉树进行中序遍历的结果. 树旋转通常应用于需要调整树的局部平衡性的场合. 树旋转包括两个不同的方式, 分别是左旋转和右旋转. 两种旋转呈镜像, 而且互为逆操作.  平衡二叉树在进行插入操作的时候可能出现不平衡的情况,AVL树即是一种自平衡的二叉树,它通过旋转不平衡的节点来使二叉树重新保持平衡,并且查找.插入和删除操作在平均和最坏情况下时间复杂度都是O(log n)   AVL树的旋转一共有四种情形,注意所有旋转情况都是围绕着使得二叉

Struts2 中#、@、%和$符号的用途

一.#符号的用途一般有三种. "#"主要有三种用途: 1. 访问OGNL上下文和Action上下文,#相当于ActionContext.getContext():下表有几个ActionContext中有用的属性: parameters 包含当前HTTP请求参数的Map #parameters.id[0]作用相当于request.getParameter ("id") request 包含当前HttpServletRequest的属性(attribute)的Map #

AVL 树的插入、删除、旋转归纳

参考链接: http://blog.csdn.net/gabriel1026/article/details/6311339 之前简单了解过 AVL 树,知道概念但一直没动手实践过.Now AVL 树是二叉搜索树的一种.二叉搜索树的规则就是:每个节点的 left child 都比自己小,right child 都比自己大.而 AVL 的在此之上又加了一个规则:每个节点的 left 深度与 right 深度只差<=1,这样就能充分利用 二叉树的结构,避免出现一个分支走到黑,导致搜索效率变低.如下图

子坐标系C在父坐标系W中的旋转问题

关键词:空间旋转.旋转轴.刚体旋转 用途:相机位姿估计.无人机位姿估计 文章类型:概念.公式总结(本文不带推倒过程,若想了解公式是如何推出来的请自习搜索文献),C++函数展示 @Author:V_Shawn @Date:2016-11-04 @Lab: [email protected] 本文接上一篇<空间点绕轴旋转公式&程序(C++)>,继续讨论空间内的旋转问题,可能会用到上一篇中定义的函数. 问题四:空间内的坐标系旋转(相机坐标系在世界坐标系中的旋转) 好了,现在问题越来越复杂了,