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 相关文章推荐
深入理解Javascript中this的作用域
Aug 12 Javascript
jquery果冻抖动效果实现方法
Jan 15 Javascript
关于延迟加载JavaScript
May 05 Javascript
浅析angularJS中的ui-router和ng-grid模块
May 20 Javascript
JQuery遍历元素的父辈和祖先的方法
Sep 18 Javascript
vue中用H5实现文件上传的方法实例代码
May 27 Javascript
vue translate peoject实现在线翻译功能【新手必看】
Jun 07 Javascript
vue项目中实现的微信分享功能示例
Jan 21 Javascript
JQuery实现简单的复选框树形结构图示例【附源码下载】
Jul 16 jQuery
JavaScript鼠标悬停事件用法解析
May 15 Javascript
javascript Number 与 Math对象的介绍
Nov 17 Javascript
js面向对象编程OOP及函数式编程FP区别
Jul 07 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 获取远程文件内容的函数代码
2010/03/24 PHP
Laravel中注册Facades的步骤详解
2016/03/16 PHP
既简单又安全的PHP验证码 附调用方法
2016/06/02 PHP
Mootools 1.2教程 Fx.Morph、Fx选项和Fx事件
2009/09/15 Javascript
JQuery扩展插件Validate 5添加自定义验证方法
2011/09/05 Javascript
通过JS获取用户本地图片路径并显示的代码
2012/02/16 Javascript
jquery多选项卡效果实例代码(附效果图)
2013/03/23 Javascript
jQuery取得设置清空select选择的文本与值
2014/07/08 Javascript
JS实现的N多简单无缝滚动代码(包含图文效果)
2015/11/06 Javascript
Nodejs抓取html页面内容(推荐)
2016/08/11 NodeJs
JS针对Array的各种操作汇总
2016/11/29 Javascript
js的OOP继承实现(必看篇)
2017/02/18 Javascript
jquery使用iscorll实现上拉、下拉加载刷新
2017/10/26 jQuery
微信小程序实现留言板
2018/10/31 Javascript
引入外部js脚本加载慢与页面白屏问题的解决
2018/12/10 Javascript
从零开始在NPM上发布一个Vue组件的方法步骤
2018/12/20 Javascript
vue2.0项目集成Cesium的实现方法
2019/07/30 Javascript
JavaScript实现滑动门效果
2020/01/18 Javascript
django 常用orm操作详解
2017/09/13 Python
python实现八大排序算法(2)
2017/09/14 Python
Python回文字符串及回文数字判定功能示例
2018/03/20 Python
Python使用numpy模块创建数组操作示例
2018/06/20 Python
详解Python3 对象组合zip()和回退方式*zip
2019/05/15 Python
利用python实现凯撒密码加解密功能
2020/03/31 Python
python 如何实现遗传算法
2020/09/22 Python
预订奥兰多和佛罗里达州公园门票:FloridaTix
2018/01/03 全球购物
家长会主持词开场白
2014/03/18 职场文书
大学生应聘求职信
2014/05/26 职场文书
小学生植树节活动总结
2014/07/04 职场文书
部门活动策划方案
2014/08/16 职场文书
乡镇四风对照检查材料
2014/08/31 职场文书
2015年毕业实习工作总结
2014/12/12 职场文书
新年晚会开场白
2015/05/29 职场文书
经典祝酒词大全
2015/08/12 职场文书
2016年度继续教育学习心得体会
2016/01/19 职场文书
MySQL 使用自定义变量进行查询优化
2021/05/14 MySQL