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 相关文章推荐
JS JSON对象转为字符串的简单实现方法
Nov 18 Javascript
jquery实现的代替传统checkbox样式插件
Jun 19 Javascript
javascript框架设计之框架分类及主要功能
Jun 23 Javascript
JS随机调用指定函数的方法
Jul 01 Javascript
jquery Easyui快速开发总结
Aug 20 Javascript
JavaScript实现阿拉伯数字和中文数字互相转换
Jun 12 Javascript
使用PBFunc在Powerbuilder中支付宝当面付款功能
Oct 01 Javascript
Javascrip实现文字跳动特效
Nov 27 Javascript
JavaScript创建对象的常用方式总结
Aug 10 Javascript
layui-table获得当前行的上/下一行数据的例子
Sep 24 Javascript
antd-DatePicker组件获取时间值,及相关设置方式
Oct 27 Javascript
vue打包时去掉所有的console.log
Apr 10 Vue.js
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排序算法的复习和总结
2012/02/15 PHP
PHP COOKIE及时生效的方法介绍
2014/02/14 PHP
PHP基于数组实现的分页函数实例
2014/08/20 PHP
浅谈php调用python文件
2019/03/29 PHP
php根据地址获取百度地图经纬度的实例方法
2019/09/03 PHP
基于PHP实现邮箱验证激活过程详解
2020/10/28 PHP
从javascript语言本身谈项目实战
2006/12/27 Javascript
javascript(jquery)利用函数修改全局变量的代码
2009/11/02 Javascript
js中将URL中的参数提取出来作为对象的实现代码
2011/08/16 Javascript
addEventListener和attachEvent二者绑定的执行函数中的this不相同
2012/12/09 Javascript
基于jquery的文字向上跑动类似跑马灯的效果
2014/09/22 Javascript
jQuery调取jSon数据并展示的方法
2015/01/29 Javascript
Web前端框架Angular4.0.0 正式版发布
2017/03/28 Javascript
解决webpack -p压缩打包react报语法错误的方法
2017/07/03 Javascript
使用vue-router设置每个页面的title方法
2018/02/11 Javascript
JavaScript面向对象的程序设计(犯迷糊的小羊)
2018/05/27 Javascript
详解在Javascript中进行面向切面编程
2019/04/28 Javascript
《javascript设计模式》学习笔记三:Javascript面向对象程序设计单例模式原理与实现方法分析
2020/04/07 Javascript
[02:43]2018DOTA2亚洲邀请赛主赛事首日TOP5
2018/04/04 DOTA
如何运行Python程序的方法
2013/04/21 Python
Swift中的协议(protocol)学习教程
2016/07/08 Python
python基于paramiko将文件上传到服务器代码实现
2019/07/08 Python
python实现中文文本分句的例子
2019/07/15 Python
Python实现AI自动抠图实例解析
2020/03/05 Python
python3中的logging记录日志实现过程及封装成类的操作
2020/05/12 Python
pycharm不以pytest方式运行,想要切换回普通模式运行的操作
2020/09/01 Python
June Jacobs尊积帕官网:知名的spa水疗护肤品牌
2019/03/21 全球购物
英国顶级足球鞋的领先零售商:Lovell Soccer
2019/08/27 全球购物
EJB的基本架构
2016/09/22 面试题
大一学生职业生涯规划
2014/03/11 职场文书
年会主持词结束语
2014/03/27 职场文书
酒店员工培训方案
2014/06/02 职场文书
介绍信的格式
2015/01/30 职场文书
三好学生个人总结
2015/02/15 职场文书
给朋友的道歉短信
2015/05/12 职场文书
2016中秋节月饼促销广告语
2016/01/28 职场文书