JS文字球状放大效果代码分享


Posted in Javascript onAugust 19, 2015

很酷的放大镜放大文字的效果,超赞!

先展示一下效果图:

JS文字球状放大效果代码分享

大家先运行代码试一试-------------------------------------效果演示-------------------------------------------

具体代码如下

<html>
<head>
<title>JS文字球状放大效果</title>
<meta http-equiv="imagetoolbar" content="no">
<style type="text/css">
 body {cursor:crosshair;margin:0; padding:0; position:absolute; overflow:hidden; background:#000; left:0; top:0; width:100%; height:100%;}
 span {position:absolute;font-family: verdana; font-weight: bold;}
</style>

<script type="text/javascript"><!--

T = "What is real?How do you define real? Ifyou're talkingabout what youcan feel whatyou can smellwhat you cantaste and seethen real issimply electrical signalsinterpreted byyour brain! ";
I = 0;
o = new Array();
xm = -1000;
ym = -1000;
///////////////
rad = 80;
dim = 200;
///////////////
W = 0;
H = 0;
NX = 14;
NY = 14;
var nx;
var ny;

document.onmousemove = function(e){
 if (window.event) e = window.event;
 xm = (e.x || e.clientX) - (nx * .5) + dim * .5;
 ym = (e.y || e.clientY) - (ny * .5) + dim * .5;
}

function resize() {
 nx = document.body.offsetWidth;
 ny = document.body.offsetHeight;
}
onresize = resize;

function CObj(N,i,j,c){
 this.obj = document.createElement("span");
 this.obj.innerHTML = c;
 DOOT.appendChild(this.obj);
 this.N = N;
 this.To = 16;
 this.x0 = i*2*W;
 this.y0 = j*2*H;
 this.anim = true;

 this.mainloop = function(){
 with (this) {
 dx = xm - x0;
 dy = ym - y0;
 dist = Math.sqrt(dx * dx + dy * dy);
 if (dist < rad) {
 anim = true;
 M = Math.cos(.5 * Math.PI * Math.abs(dist / rad));
 c = Math.round(84 + M * 171);
 with(obj.style){
 left = x0 - dx * M;
 top = y0 - dy * M;
 zIndex = Math.round(100 + M);
 fontSize = 8 + M * W * 2;
 color = "RGB("+c+","+c+","+c+")";
 }
 } else {
 if(anim){
 with(obj.style){
 left = x0;
 top = y0;
 zIndex = 0;
 fontSize = 8;
 color = "RGB(88,88,88)";
 }
 anim = false;
 }
 }
 }
 }
}
function run(){
 for(i in o)o[i].mainloop();
 setTimeout(run,16);
}

onload = function (){
 DOOT = document.getElementById("doot");
 with(DOOT.style){
 left = -dim/2;
 top = -dim/2;
 width = dim;
 height = dim;
 }
 resize();
 W = (dim / NX) / 2;
 H = (dim / NY) / 2;
 K = 0;
 for(var j=0;j<NY;j++){
 for(var i=0;i<NX;i++){
 c=T.charAt((I++)%T.length).toUpperCase();
 if(c==" ")c="·";
 o[K] = new CObj(K++,i,j,c);
 }
 }
 run();
}
//-->
</script>
</head>

<body>
<span style="position:absolute;left:50%;top:50%">
 <span id="doot"></span>
</span>

</body>
</html>

小伙伴们想不想实现这种酷炫的效果,直接复制代码,运行即可,抓紧试试吧,或者是再来点创新。

以上就是为大家分享的JavaScript文字球状放大效果代码,希望大家可以喜欢。

Javascript 相关文章推荐
JavaScript constructor和instanceof,JSOO中的一对欢喜冤家
May 25 Javascript
js 实现复制到粘贴板的功能代码
May 13 Javascript
IE6下通过a标签点击切换图片的问题
Nov 14 Javascript
推荐阅读的js快速判断IE浏览器(兼容IE10与IE11)
Dec 13 Javascript
vue分页组件table-pagebar使用实例解析
Nov 15 Javascript
JS常用知识点整理
Jan 21 Javascript
原生JS实现九宫格抽奖效果
Apr 01 Javascript
Javascript实现时间倒计时功能
Nov 17 Javascript
JavaScript数据结构与算法之二叉树插入节点、生成二叉树示例
Feb 21 Javascript
vue 开发企业微信整合案例分析
Dec 02 Javascript
JS数组进阶示例【数组的几种函数用法】
Jan 16 Javascript
JS中循环遍历数组的四种方式总结
Jan 23 Javascript
IE6兼容透明背景图片及解决方案
Aug 19 #Javascript
JavaScript实现表格快速变色效果代码
Aug 19 #Javascript
js实现YouKu的漂亮搜索框效果
Aug 19 #Javascript
JS时间特效最常用的三款
Aug 19 #Javascript
js仿黑客帝国字母掉落效果代码分享
Nov 08 #Javascript
JS模拟并美化的表单控件完整实例
Aug 19 #Javascript
js实现文本框只允许输入数字并限制数字大小的方法
Aug 19 #Javascript
You might like
PHP 自定义错误处理函数trigger_error()
2013/03/26 PHP
Codeigniter发送邮件的方法
2015/03/19 PHP
PHP 断点续传实例详解
2017/11/11 PHP
TP(thinkPHP)框架多层控制器和多级控制器的使用示例
2018/06/13 PHP
一文掌握PHP Xdebug 本地与远程调试(小结)
2019/04/23 PHP
在一个浏览器里呈现所有浏览器测试结果的前端测试工具的思路
2010/03/02 Javascript
清空上传控件input file的值
2010/07/03 Javascript
javascript 隔行换色函数代码
2010/10/24 Javascript
javascript学习笔记(五) Array 数组类型介绍
2012/06/19 Javascript
轻松创建nodejs服务器(10):处理POST请求
2014/12/18 NodeJs
微信小程序实现轮播图效果
2017/09/07 Javascript
Angular 组件之间的交互的示例代码
2018/03/24 Javascript
使用react实现手机号的数据同步显示功能的示例代码
2018/04/03 Javascript
10个最受欢迎的 JavaScript框架(推荐)
2019/04/24 Javascript
实现一个Vue自定义指令懒加载的方法示例
2020/06/04 Javascript
从0搭建vue-cli4脚手架
2020/06/17 Javascript
javascript实现前端input密码输入强度验证
2020/06/24 Javascript
Vue 防止短时间内连续点击后多次触发请求的操作
2020/11/11 Javascript
[01:10:24]DOTA2-DPC中国联赛 正赛 VG vs Aster BO3 第一场 2月28日
2021/03/11 DOTA
python完成FizzBuzzWhizz问题(拉勾网面试题)示例
2014/05/05 Python
详解python并发获取snmp信息及性能测试
2017/03/27 Python
Python设计实现的计算器功能完整实例
2017/08/18 Python
python 编写简单网页服务器的实例
2018/06/01 Python
python读出当前时间精度到秒的代码
2019/07/05 Python
Django通用类视图实现忘记密码重置密码功能示例
2019/12/17 Python
CSS3实现头像旋转效果
2017/03/13 HTML / CSS
NIHAOMARKET官方海外旗舰店:意大利你好华人超市
2018/01/27 全球购物
We Fashion荷兰:一家国际时装公司
2018/04/18 全球购物
美国最大最全的亚洲购物网站:美国亚米网(Yamibuy)
2020/05/05 全球购物
外贸销售员求职的自我评价
2013/11/23 职场文书
党风廉设责任书
2014/04/16 职场文书
学校三节实施方案
2014/06/09 职场文书
关键在于落实心得体会
2014/09/03 职场文书
服务员态度差检讨书
2014/10/28 职场文书
小程序实现悬浮按钮的全过程记录
2021/10/16 HTML / CSS
python turtle绘图命令及案例
2021/11/23 Python