css3让div随鼠标移动而抖动起来


Posted in HTML / CSS onFebruary 10, 2014

最近发现一个网站,感觉用户体验不错,特别是一些背景图片随着鼠标的移动的反向的移动,感觉跟不错,于是就试着写了个小demo模仿一下

复制代码
代码如下:

<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<style type="text/css">
.layer {
width:400px;
height:400px;
background-color:#FF7373;
transa
}
.A {
position: absolute;
top: 23px;
left: 10px;
}
.B {
position: absolute;
top: 223px;
left: 516px;
}
.C {
position: absolute;
top: 384px;
left: 1000px;
}
</style>
</head>
<body>
<div class="layer A"></div>
<div class="layer B"></div>
<div class="layer C"></div>
</body>
<script type="text/javascript">
var items = document.getElementsByClassName("layer");
document.addEventListener('mousemove', function (evt){
var x = evt.clientX;
var y = evt.clientY;
//console.log(x);
var winWidth = window.innerWidth;
var winHeight = window.innerHeight;
var halfWidth = winWidth / 2;
var halfHeight = winHeight / 2;
var rx = x - halfWidth;
var ry = halfHeight - y;
var length = items.length;
var max = 30;
for (var i = 0 ; i < length ; i++) {
var dx = (items[i].getBoundingClientRect().width/max)*(rx / -halfWidth);
var dy = (items[i].getBoundingClientRect().height/max)*(ry / halfHeight);
items[i].style['transform'] = items[i].style['-webkit-transform'] = 'translate('+dx+'px,'+dy+'px)';
}
}, false);
</script>
</html>

说明一下分别拿到每个div的长度和宽度,通过比例算出相对于窗口的合适的偏移量,max是每个div左右偏移最多不超过的值

效果展示
css3让div随鼠标移动而抖动起来

HTML / CSS 相关文章推荐
CSS3解决移动页面上点击链接触发色块的问题
Jun 03 HTML / CSS
css3截图_动力节点Java学院整理
Jul 11 HTML / CSS
css sprite简单实例
May 23 HTML / CSS
CSS3制作漂亮的照片墙的实现代码
Jun 08 HTML / CSS
详解HTML5表单新增属性
Dec 21 HTML / CSS
html5中去掉input type date默认样式的方法
Sep 06 HTML / CSS
详解Html5中video标签那些属性和方法
Jul 01 HTML / CSS
html5-websocket基于远程方法调用的数据交互实现
Dec 04 HTML / CSS
如何用H5实现一个触屏版的轮播器的实例
Jan 09 HTML / CSS
CSS中Single Div 绘图技巧的实现
Jun 18 HTML / CSS
CSS基础详解
Oct 16 HTML / CSS
CSS 鼠标点击拖拽效果的实现代码
Dec 24 HTML / CSS
css3 给页面加个半圆形导航条主要利用旋转和倾斜样式
Feb 10 #HTML / CSS
css3的@media属性实现页面响应式布局示例代码
Feb 10 #HTML / CSS
CSS3控制HTML元素动画效果
Feb 08 #HTML / CSS
使用css3匹配手机屏幕横竖状态
Jan 27 #HTML / CSS
css3教程之倾斜页面
Jan 27 #HTML / CSS
使用css3制作动感导航条示例
Jan 26 #HTML / CSS
带有css3动画效果的兼容多浏览器简单导航条示例
Jan 26 #HTML / CSS
You might like
PHP_Flame(Version:Progress)的原代码
2006/10/09 PHP
php命令行用法入门实例教程
2014/10/27 PHP
PHP比较运算符的详细介绍
2015/09/29 PHP
10个值得深思的PHP面试题
2016/11/14 PHP
php微信公众号开发(3)php实现简单微信文本通讯
2016/12/15 PHP
Laravel中的Blade模板引擎示例详解
2017/10/10 PHP
php面向对象程序设计入门教程
2019/06/22 PHP
推荐17个优美新鲜的jQuery的工具提示插件
2012/09/14 Javascript
window.location.reload()方法刷新页面弹出要再次显示该网页对话框
2013/04/24 Javascript
js图片实时加载提供网页打开速度
2014/09/11 Javascript
被遗忘的javascript的slice() 方法
2015/04/20 Javascript
限制文本框只能输入数字||只能是数字和小数点||只能是整数和浮点数
2016/05/27 Javascript
原生JS实现跑马灯效果
2017/02/20 Javascript
JavaScript之DOM_动力节点Java学院整理
2017/07/03 Javascript
浅谈React前后端同构防止重复渲染
2018/01/05 Javascript
微信小程序之判断页面滚动方向的示例代码
2018/08/30 Javascript
JavaScript原型对象原理与应用分析
2018/12/27 Javascript
如何使用less实现随机下雪动画详解
2019/01/02 Javascript
JavaScript解析JSON数据示例
2019/07/16 Javascript
在vue中动态添加class类进行显示隐藏实例
2019/11/09 Javascript
js的Object.assign用法示例分析
2020/03/05 Javascript
使用setup.py安装python包和卸载python包的方法
2013/11/27 Python
Python基于opencv的图像压缩算法实例分析
2018/05/03 Python
Django基础三之视图函数的使用方法
2019/07/18 Python
Python 序列化和反序列化库 MarshMallow 的用法实例代码
2020/02/25 Python
20行Python代码实现视频字符化功能
2020/04/13 Python
python中def是做什么的
2020/06/10 Python
Bonami斯洛伐克:购买家具和家居饰品
2019/07/02 全球购物
财务学生的职业生涯发展
2014/02/11 职场文书
高级编程求职信模板
2014/02/16 职场文书
岗位职责风险防控
2014/02/18 职场文书
授权委托书样本
2014/04/03 职场文书
人力资源职位说明书
2014/07/29 职场文书
离婚协议书范本样本
2014/08/19 职场文书
2014入党积极分子破除“四风”思想汇报
2014/09/14 职场文书
如何利用pygame实现打飞机小游戏
2021/05/30 Python