JavaScript小实例-文本循环变色效果
在现实生活中我们常常看到文字循环变色的效果,此效果不仅能让人们印象深刻,还提高了美观度,代码及注释如下:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="author" content="http://www.softwhy.com/" />
<title>是壳哥呀!</title>
<style type="text/css">
body{background: mediumpurple;}
</style>
<script type="text/javascript">
//所使用的的字符串
var message="不管你是飒飒、绒绒、卷儿、炸炸等,一剪子下去都变我壳哥!!!";
// 设置文字的最初颜色。
var baseColor="gold";
// 设置变化的颜色
var textColor="aqua";
// 变色文字后面跟着的文字的颜色
var secondTextColor="lawngreen";
// 设置定时器的间隔时间
var speed=200;
// 设置初次变色文字的个数
var letters=6;
// 设置跟在后面要变色的文字的个数
var secondLetters=4;
// 延迟执行的时间
var pause=0;
// 声明一个变量,并赋初值为0
var count=0;
// 定时器的返回值
var timer=null;
// 遍历每一个字符串,然后给每一个字符外面嵌套一个span元素,并设置span元素的id属性值
for(m=0;m<message.length;m++){
document.write('<span id="light'+m+'">'+message.charAt(m)+'</span>');
}
// 封装一个类似于jQuery的id选择器
function $(id){
return document.getElementById(id);
}
// 核心
function done(){
// 刚加载代码执行,设置所有span元素的字体颜色
if(count==0){
for(var m=0;m<message.length;m++){
$("light"+m).style.color=baseColor;
}
}
// 设置对应索引的span元素的字体颜色
$("light"+count).style.color=textColor;
// 如果count的值大于letters-1,则将变色的前一个字符的颜色设置为secondTextColor
if(count>letters-1){
$("light"+(count-letters)).style.color=secondTextColor;
}
// 判断,变蓝的个数超出secondletters,则将超出部分颜色设置为初始颜色
if(count>(letters+secondLetters)-1){
$("light"+(count-letters-secondLetters)).style.color=baseColor;
}
// count的值小于字符串字符的最大索引值,则count加1,
// 否则count重置为0,然后停止定时器函数的执行
if(count<message.length-1){
count++
}
else{
count=0
clearInterval(timer)
// 指定延迟时间之后再开始执行函数begindone()
setTimeout("begindone()",pause)
return
}
}
function begindone(){
timer=setInterval("done()",speed);
}
window.onload=function(){
begindone();
}
</script>
</head>
<body>
<div>
</div>
</body>
</html>
JavaScript小实例-文本循环变色效果的更多相关文章
- JavaScript小实例-文字跑马灯效果
我们常常能看到显示屏上字体的滚动以及手机弹幕等,下面所示代码就是一个简易的文字跑马灯的效果: <!DOCTYPE html> <html> <head lang=&quo ...
- JavaScript小实例:拖拽应用(二)
经常在网站别人的网站的注册页中看到一个拖拽验证的效果,就是它的验证码刚开始不出来,而是有一个拖拽的条,你必须将这个拖拽条拖到底,验证码才出来,说了感觉跟没说一样,你还是不理解,好吧,我给个图你看看: ...
- javascript小实例,拖拽应用(一)
前面我们将了一下拖拽的基本思想,理论是有了,那实践呢,可以运用到什么地方呢?下面就给大家带来一个用拖拽思想写的一个小实例,供大家参考,大致效果看下图: 就是这样一个简单的一个拖拽条,你可以把它理解为滚 ...
- JavaScript 小实例 - 表单输入内容检测,对页面的增删改
JavaScript 小实例 - 表单输入内容检测,对页面的增删改 效果体验地址:https://xpwi.github.io/js/JavaScript01/jsForm.html 功能: 1.向页 ...
- 特殊例子--JavaScript代码实现图片循环滚动效果
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- javascript小实例,实现99乘法表及隔行变色
人生短暂,废话不多说,直奔主题! 这个小实例的要求: 实现在页面中输出99乘法表.(要求:以每三行为一组,实现隔行变色(颜色为白,红,黄(也可自己定义)),鼠标滑过每一行,行背景颜色变为蓝色,鼠标离开 ...
- javascript小实例,编写一个方法,实现从n-m个数中随机选出一个整数
别怪我是一个闷葫芦,没那么多花哨的语言,废话不多说,先说说小实例的要求: 编写一个方法,实现从n-m个数中随机选出一个整数,要求:传递的参数不足两个或者不是有效数字,返回[0-1]之间的随机数,需要解 ...
- JavaScript小练习3-用循环使三个DIV变色
题目 初始为黑色,点击后为红色,再次点击为黑色,以后每次点击一次变色. 分析 简单的onclick使用. button的居中可以在外套一个p元素,body中让p居中即可. 三个DIV块的居中,使用ma ...
- javascript小实例,多种方法实现数组去重问题
废话不多说,直接拿干货! 先说说这个实例的要求:写一个方法实现数组的去重.(要求:执行方法,传递一个数组,返回去重后的新数组,原数组不变,实现过程中只能用一层循环,双层嵌套循环也可写,只做参考): 先 ...
随机推荐
- vue 各种 import 引入
vue 各种 import 引入: https://www.jianshu.com/p/784e51ec68ce 阮一峰:http://es6.ruanyifeng.com/#docs/module
- Dubbo与SpringBoot的结合
前言 这段时间在接触分布式的内容,因为公司的技术栈是 dubbo ,所以我顺其自然地选择了 dubbo 作为我学习的框架. 看了任务清单,这篇文章应该是在6天前出来的,但是因为实习等等的一些事情耽误了 ...
- [轉]Linux 2.6内核笔记【内存管理】
4月14日 很多硬件的功能,物尽其用却未必好过软实现,Linux出于可移植性及其它原因,常常选择不去过分使用硬件特性. 比如 Linux只使用四个segment,分别是__USER_CS.__USER ...
- Day1 - 认识大数据& 企业需求分析 & 北风网简介
上午: 介绍: 海量的乱七八糟的数据中快速的计算出某些有用的信息 刑侦视频追踪 云栖大会 大数据分析/挖掘 ==> python <== 重点关注 大数据运维 ==> 运服务 ...
- arcpy-字段唯一值、重复值、最值、平均值、方差、标准差、中数、众数
插个广告,制作ArcGIS的Tool工具学习下面的教程就对了: 零基础学习Python制作ArcGIS自定义工具观看链接 <零基础学习Python制作ArcGIS自定义工具>课程简介 im ...
- 前后台 工作切换---------------Linux 任务管理器(一)
继续下一章... 发现了一个好东东.就是前后台的切换.例如我们现在要vim一个文件.然后又要查找一些命令的时候,以前不知道,都是退出后,查完了,在vim进入.现在我们可以将该vim拿到后台,然后查完了 ...
- Translucent System Bar 的最佳实践
转自:http://www.jianshu.com/p/0acc12c29c1b 近几天准备抽空总结Android一些系统UI的实践使用,于是开始动手建了一个库 AndroidSystemUiTrai ...
- PHP-两数相除
给定两个整数,被除数 dividend 和除数 divisor.将两数相除,要求不使用乘法.除法和 mod 运算符. 返回被除数 dividend 除以除数 divisor 得到的商. 示例 1: 输 ...
- Java之数据库连接池
未使用数据库连接池,需要从底层申请数据库连接来访问数据库,访问结束之后需要把链接丢弃.长此以往浪费时间. 数据库连接池就是用容器来申请访问,容器里有很多连接对象,用户来容器里拿一个连接对象一起访问数据 ...
- WPF ListBox 横向排列
WPF ListBox 横向排列 如果只是单纯的让ListBox可以横向配列,这样很简单,只需要更改ListBox的ItemsPanel模板就可以,例如: <ListBox><L ...