jquery 卷帘效果实现代码(不同方向)


Posted in Javascript onFebruary 05, 2013

jquery 卷帘效果实现代码(不同方向)
demo01.htm

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>方向反馈</title> 
<style type="text/css"> 
html,body{margin:0;padding:50px;} 
#wrap{position:relative;width:400px;height:300px;background:#33aa00;margin:50px;display:inline-block;font-size:50px;text-align:center;line-height:300px;overflow:hidden;} 
</style> 
<body> 
<div id="wrap"> 
方向反馈 
</div> 
<div id="result" > 
<span style="color:#FFF;">反馈方向</span> 
</div> 
<script src="../jquery-1.8.0.min.js" type="text/javascript"></script> 
<script src="rollingMask-0.1.0.js" type="text/javascript"></script> 
<script type="text/javascript"> 
$(document).ready(function(){ 
$.rollingMask({ 
objId:"wrap", 
content:$("#result").html() 
}); 
}); 
</script> 
</body> 
</html>

rollingMask-0.1.0.js
/** 
* 不同方向的卷帘效果 
* 
**/ 
$.extend({ 
rollingMask:function(opt,callback){ 
this.defaults = { 
objId:"", // 容器id 
content:"test", // 卷帘内容 
opacity: 0.8, 
fadeSpeed:150 // 卷帘消失的时间 
}; 
// 参数初始化 
var opts = $.extend(this.defaults,opt); var contentId = opts.objId + "_content"; 
var showId = opts.objId + "_show"; 
$("#" + opts.objId).bind("mouseenter mouseleave", 
function(e) { 
var w = $(this).width(); 
var h = $(this).height(); 
var x = (e.pageX - this.offsetLeft - (w / 2)) * (w > h ? (h / w) : 1); 
var y = (e.pageY - this.offsetTop - (h / 2)) * (h > w ? (w / h) : 1); 
var direction = Math.round((((Math.atan2(y, x) * (180 / Math.PI)) + 180) / 90) + 3) % 4; 
var eventType = e.type; 
if(e.type == 'mouseenter'){ 
$("#" + opts.objId).append("<div id=\"" + contentId+ "\">" + opts.content + "</div>"); 
$("#" + contentId).css({ 
"position":"absolute", 
"width":w + "px", 
"height":h + "px", 
"top":"0px", 
"left":"0px", 
"background":"#F55", 
opacity:opts.opacity 
}); 
switch(direction){ 
case 0: 
$("#" + contentId).css("top",-h + "px"); 
break; 
case 1: 
$("#" + contentId).css("left",w + "px"); 
break; 
case 2: 
$("#" + contentId).css("top",h + "px"); 
break; 
case 3: 
$("#" + contentId).css("left",-w + "px"); 
break; 
} 
$("#" + contentId).animate({"top":"0px","left":"0px"}); 
}else{ 
$("#" + contentId).fadeOut(opts.fadeSpeed, function(){ 
$("#" + contentId).remove(); 
}); 
} 
} 
); 
} 
});
Javascript 相关文章推荐
简洁Ajax函数处理(示例代码)
Nov 15 Javascript
js实现文章文字大小字号功能完整实例
Nov 01 Javascript
js兼容火狐获取图片宽和高的方法
May 21 Javascript
js实现接收表单的值并将值拼在表单action后面的方法
Nov 23 Javascript
jquery实现简单的全选和反选功能
Jan 02 Javascript
jquery实现简单的banner轮播效果【实例】
Mar 30 Javascript
详解react如何在组件中获取路由参数
Jun 15 Javascript
Angular使用Md5加密的解决方法
Sep 16 Javascript
p5.js入门教程之小球动画示例代码
Mar 15 Javascript
vue二级菜单导航点击选中事件的方法
Sep 12 Javascript
在小程序Canvas中使用measureText的方法示例
Oct 19 Javascript
详解express使用vue-router的history踩坑
Jun 05 Javascript
window.open关于浏览器拦截问题分析及解决方法
Feb 05 #Javascript
jQuery.prototype.init选择器构造函数源码思路分析
Feb 05 #Javascript
jQuery不间断滚动效果(模拟百度新闻支持文字/图片/垂直滚动)
Feb 05 #Javascript
得到jQuery detach()后节点中的某个值实现代码
Feb 05 #Javascript
jquery zTree异步加载简单实例分享
Feb 05 #Javascript
JS打印gridview实现原理及代码
Feb 05 #Javascript
漂亮的jquery提示效果(仿腾讯弹出层)
Feb 05 #Javascript
You might like
php生成随机密码的几种方法
2011/01/17 PHP
php实现的美国50个州选择列表实例
2015/04/20 PHP
php简单防盗链实现方法
2015/07/29 PHP
PHP记录页面停留时间的方法
2016/03/30 PHP
初窥JQuery(二) 事件机制(1)
2010/11/25 Javascript
使用GruntJS构建Web程序之Tasks(任务)篇
2014/06/06 Javascript
DOM节点深度克隆函数cloneNode()用法实例
2015/01/12 Javascript
js实现感应鼠标图片透明度变化的方法
2015/02/20 Javascript
JavaScript中定义函数的三种方法
2015/03/12 Javascript
AngularJs 国际化(I18n/L10n)详解
2016/09/01 Javascript
深入理解JavaScript中的块级作用域、私有变量与模块模式
2016/10/31 Javascript
自己封装的一个简单的倒计时功能实例
2016/11/23 Javascript
自定义require函数让浏览器按需加载Js文件
2016/11/24 Javascript
js正则表达式最长匹配(贪婪匹配)和最短匹配(懒惰匹配)用法分析
2016/12/27 Javascript
javascript中this用法实例详解
2017/04/06 Javascript
jQuery实现多张图片上传预览(不经过后端处理)
2017/04/29 jQuery
jquery+ajax实现省市区三级联动 (封装和不封装两种方式)
2017/05/15 jQuery
Vue.js中extend选项和delimiters选项的比较
2017/07/17 Javascript
前端防止用户重复提交js实现代码示例
2018/09/07 Javascript
对vue中v-if的常见使用方法详解
2018/09/28 Javascript
javascript实现的字符串转换成数组操作示例
2019/06/13 Javascript
解决Layui中layer报错的问题
2019/09/03 Javascript
JavaScript实现沿五角星形线摆动的小圆实例详解
2020/07/28 Javascript
python根据日期返回星期几的方法
2015/07/06 Python
python简单分割文件的方法
2015/07/30 Python
css3加js做一个简单的3D行星运转效果实例代码
2017/01/18 HTML / CSS
AC Lens:购买隐形眼镜
2017/02/26 全球购物
Under Armour安德玛中国官网:美国高端运动科技品牌
2018/03/09 全球购物
Pam & Gela官网:美国性感前卫女装品牌
2018/07/19 全球购物
Java工程师面试集锦之Spring框架
2013/06/16 面试题
某科技软件测试面试题
2013/05/19 面试题
社会稳定风险评估方案
2014/06/02 职场文书
离婚财产分配协议书
2014/10/21 职场文书
Go缓冲channel和非缓冲channel的区别说明
2021/04/25 Golang
Django 实现jwt认证的示例
2021/04/30 Python
Python实战之大鱼吃小鱼游戏的实现
2022/04/01 Python