一个JavaScript的求爱小特效


Posted in Javascript onMay 09, 2014

这里面做了一个JavaScript的求爱小特效,效果如下:

不仅能出现下面的图的效果,还可以让这个图形跟随着鼠标转动哦,这里面只是一个简单的没有修饰的小例子,基于这个例子可以让求爱,更加好玩了。闷骚男们,是不是可以给你的小萝莉发个这样的网页啊。给力的。
一个JavaScript的求爱小特效
贴上code吧:

<!DOCTYPE html> 
<html> 
<head> 
<meta charset="UTF-8"> 
<title>Insert title here</title> 
<style type="text/css"> 
body{ 
border:1px red solid; 
width:1000px; 
height:1000px; 
margin:0px auto; 
padding:0px; 
color:green; 
} 
/* 
将对象从文档流中拖出,使用 left , right , top , bottom 等属性相对于 
其最接近的一个最有定位设置的父对象进行绝对定位。如果不存在这样的父对象,则 
依据 body 对象。而其层叠通过 z-index 属性定义 
*/ 
div{ 
position:absolute; 
} 
</style> 
<script type="text/javascript"> 
//为什么要用onload,因为我在javascript代码中初始化时钟的div时,调试页面发现没有实现 
//后来发现原因,html的代码是从前往后解析的。当先解析到JavaScript代码的时候,向body中 
//添加子节点的时候,找不到还未解析的body。所以应该先解析body的啦。方法有两种,一种就是下 
//的写法,另一种也可以是在body标签中添加onload方法。 
window.onload=function(){ 
init(); 
}; 
//定义一个div数组,来存储12个div 
//因为12个div位置上的关系,所以先确定一下圆点和半径,以便计算div的位置 
var divs=[]; 
var loveBaby=["我","爱","你","!","宝","贝","你","爱","我","吗","勉","勉"] 
var CX=300; 
var CY=300;//----------------------网页中的位置坐标没有单位吗? 
var R=150; 
var divCenterNode;//中心点的位置要进行控制,设置全局变量 
//定义一个初始化的函数 
function init(){ 
//创建一个中心点位置的div(可以写上求爱对象哦) 
divCenterNode=document.createElement("div"); 
divCenterNode.innerHTML="婷婷,嫁给我吧!"; 
document.body.appendChild(divCenterNode); 
divCenterNode.style.left=(CX-50)+"px"; 
divCenterNode.style.top=(CY-30)+"px"; 
//创建12个div组成一个禁止的时钟,放在body中 
for(var x=1;x<=12;x++){ 
//创建div 
var divNode=document.createElement("div"); 
divNode.innerHTML=loveBaby[x-1]; 
//body对象不需要和其它对象一样去获取,js库中已经封装好了。 
document.body.appendChild(divNode); 
divs.push(divNode); 
} 
//每次启动startClock()对div元素进行重新定位 
/* 
实际上要想达到旋转的效果,需要不断的进行偏移,或者说 
进行重新定位,但是作循环,不能控制间隔多久启动函数,那么 
这时候window对象提供了方法。 
*/ 
startClock(); } 
//div的偏移量 
var offset=0;//度数偏移量 
//将位置的定位和转动单独定义一个函数 
function startClock(){ 
for(var x=1;x<=12;x++){ 
var div = divs[x-1]; 
//每一个数字的度数 
var dushu=30*x+offset; 
// 角度值 * Math.PI /180 = 弧度值 
var divLeft = CX+R*Math.sin(dushu*Math.PI/180); 
div.style.left=divLeft+"px"; 
var divTop = CY-R*Math.cos(dushu*Math.PI/180); 
div.style.top=divTop+"px"; 
} 
offset+=50; 
//间隔一定的时间,回调这个函数 
//经过指定毫秒值后计算一个表达式。第一个参数是表达式,第二个参数是时间 
setTimeout(startClock,80);//window对象的方法 
} 
//定义这个时钟随着鼠标移动到不同的位置 
function clockMove(event){ 
CX=event.clientX;//鼠标所在位置的x坐标 
CY=event.clientY;//鼠标所在位置的y坐标 
divCenterNode.style.left=(CX-50)+"px"; 
divCenterNode.style.top=(CY-30)+"px"; 
} 
</script> 
</head> 
<body onmousemove="clockMove(event)"> 
<!-- 
一、把12个数字按一圈显示出来 
1\创建12个DIV,分别赋值 1--12 
2\给12个DIV定位,围成一圈。 
--> 
</body > 
</html>

本来是想做一个会转动,会跑的时钟显示。所以代码中的命名和时钟有关,就不纠结了,亲。初学javascript,感觉javascript很强大。
Javascript 相关文章推荐
js鼠标悬浮出现遮罩层的方法
Jan 28 Javascript
JavaScript中创建对象的模式汇总
Apr 19 Javascript
Bootstrap框架下下拉框select搜索功能
Mar 26 Javascript
Three.js学习之几何形状
Aug 01 Javascript
bootstrap table操作技巧分享
Feb 15 Javascript
Vue项目部署在Spring Boot出现页面空白问题的解决方案
Nov 26 Javascript
vue 父组件给子组件传值子组件给父组件传值的实例代码
Apr 15 Javascript
vue中axios实现数据交互与跨域问题
May 12 Javascript
在Vue中使用this.$store或者是$route一直报错的解决
Nov 08 Javascript
基于javascript的无缝滚动动画1
Aug 07 Javascript
JS实现小米轮播图
Sep 21 Javascript
vue-treeselect的基本用法以及解决点击无法出现拉下菜单
Apr 30 Vue.js
js中的setInterval和setTimeout使用实例
May 09 #Javascript
js获取 type=radio 值的方法
May 09 #Javascript
js实现的点击数量加一可操作数据库
May 09 #Javascript
jQuery照片伸缩效果不影响其他元素的布局
May 09 #Javascript
js四舍五入数学函数round使用实例
May 09 #Javascript
JavaScript实现的购物车效果可以运用在好多地方
May 09 #Javascript
关于Javascript 对象(object)的prototype
May 09 #Javascript
You might like
php 从数据库提取二进制图片的处理代码
2009/09/09 PHP
Zend Framework教程之路由功能Zend_Controller_Router详解
2016/03/07 PHP
PHP实现十进制、二进制、八进制和十六进制转换相关函数用法分析
2017/04/25 PHP
载入进度条 效果
2006/07/08 Javascript
Ajax+Json 级联菜单实现代码
2009/10/27 Javascript
JavaScript中的作用域链和闭包
2012/06/30 Javascript
JS、jquery实现几分钟前、几小时前、几天前等时间差显示效果的代码实例分享
2014/04/11 Javascript
jquery搜索框效果实现方法
2015/01/16 Javascript
JavaScript更改原始对象valueOf的方法
2015/03/19 Javascript
jquery html5 视频播放控制代码
2016/11/06 Javascript
12306 刷票脚本及稳固刷票脚本(防挂)
2017/01/04 Javascript
微信小程序之购物车功能
2020/09/23 Javascript
javascript 缓冲运动框架的实现
2017/09/29 Javascript
form表单数据封装成json格式并提交给服务器的实现方法
2017/12/14 Javascript
在vue中通过axios异步使用echarts的方法
2018/01/13 Javascript
详解Nuxt.js Vue服务端渲染摸索
2018/02/08 Javascript
在vue中使用回调函数,this调用无效的解决
2020/08/11 Javascript
Python中使用pprint函数进行格式化输出的教程
2015/04/07 Python
python计算一个序列的平均值的方法
2015/07/11 Python
在Django框架中编写Contact表单的教程
2015/07/17 Python
Python 模块EasyGui详细介绍
2017/02/19 Python
python利用smtplib实现QQ邮箱发送邮件
2020/05/20 Python
Python字符串中添加、插入特定字符的方法
2019/09/10 Python
python自动分箱,计算woe,iv的实例代码
2019/11/22 Python
使用python创建生成动态链接库dll的方法
2020/05/09 Python
matplotlib设置颜色、标记、线条,让你的图像更加丰富(推荐)
2020/09/25 Python
德国机车企业:FC-Moto
2017/10/27 全球购物
爱情检讨书大全
2014/01/21 职场文书
人与自然的观后感
2015/06/18 职场文书
《扇形统计图》教学反思
2016/02/17 职场文书
2016年乡镇七一建党节活动总结
2016/04/05 职场文书
教你怎么用Python处理excel实现自动化办公
2021/04/30 Python
如何使用PostgreSQL进行中文全文检索
2021/05/27 PostgreSQL
刚学完怎么用Python实现定时任务,转头就跑去撩妹!
2021/06/05 Python
Python的代理类实现,控制访问和修改属性的权限你都了解吗
2022/03/21 Python
海弦WR-800F
2022/04/05 无线电