JQuery制作的放大效果的popup对话框(未添加任何jquery plugin)分享

多的不说了,直奔主题,分享一个放大效果的popup dialog,项目中可以根据自己的需求来写css,我打算复用到metro风格的site上去。

看起来动画效果还是比较cool的,如果加上了处理后的效果更佳:


代码如下:

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
<script src="Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>
<style>
body { background: #ace; font: 12px/1.2 Arial, Helvetica, sans-serif; }
ul li { background:#fff; margin:5px; width:100px; height:100px; float:left; }
#transition {
background:transparent;
display:none;
position:absolute; top:50%; left:50%; z-index:50;
z-index: 10001;
}
#content {
background:#fff;
border:1px solid #666;
margin:-50px 0 0 -50px;
width:100px; height:100px;
z-index: 10001;
}
#mask{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: #000000;
display: none;
z-index: 10000;
}
.close
{
width:30px;
height:20px;
background-color:Red;
cursor:pointer;
display:none;
}
.closeShow
{
width:30px;
height:20px;
margin-left:50px;
margin-top:-100px;
background-color:Red;
cursor:pointer;
}
</style>
<script type="text/javascript">
$(document).ready(function () {
$('ul li').click(function (e) {
$("#mask").fadeTo(500, 0.25);
$("#content").html("<div>Loading....</div>");
var $t = $('#transition'),
to = $(this).offset();
var height = $(document).height();
var width = $(document).width();
$('#content').css({ width: 100, height: 100 });
$t.css({
top: to.top + 50,
left: to.left + 50,
display: 'block'
}).animate({
top: height / 2,
left: width / 2
}, 600, function () {
$(this).animate({
top: 125,
left: 175
}, 600);
$('#content').animate({
width: width * 0.8,
height: height * 0.8
}, 600, function () {
// open dialog here
$("#content").html("<div>Hello, please put content here.</div>");
});
});
});
$('#transition').click(function (e) {
$("#transition").hide();
$("#mask").hide();
});
});
</script>
</head>
<body>
<form id="form1" runat="server">
<ul>
<li>thumb</li>
<li>thumb</li>
<li>thumb</li>
<li>thumb</li>
<li>thumb</li>
<li>thumb</li>
<li>thumb</li>
<li>thumb</li>
<li>thumb</li>
</ul>
<div id='mask'></div>
<div id="transition"><div id="content">Loading....</div></div>
</form>
</body>
</html>

加入了mask效果,如果不需要可以直接删掉。

(0)

相关推荐

  • 一步一步教你写一个jQuery的插件教程(Plugin)

    jQuery 的plugin开发需要注意的事情,1.       明确jQuery的命名空间只有一个.2.       明白options参数用来控制plugin的行为.3.       为默认的plugin设定提供公共的访问权限.4.       为子函数提供公共的访问权限.5.       私有的函数绝对是私有访问6.       支持metadata plugin.我将会在下面的例子中一个一个的说明上面这几个条件,做完这些事情后我们就会创建一个高亮显示text的简单插件. 1. 明确jQu

  • Ext4.2的Ext.grid.plugin.RowExpander无法触发事件解决办法

    Ext4.2+ Ext.grid.plugin.RowExpander存在bug,添加的collapsebody,expandbody无法触发,查看了下 Ext.grid.plugin.RowExpander对应的源代码,没有添加collapsebody,expandbody事件,即使按照网上的方 法重写Ext.grid.plugin.RowExpander的init和toggleRow方法也无法触发 collapsebody,expandbody事件. 解决办法:给grid对象添加collap

  • jQuery中关于ScrollableGridPlugin.js(固定表头)插件的使用逐步解析

    这个ScrollableGridPlugin.js是从网上找到的一个具有固定表头效果的插件,使用起来灰常的简便,而且效果也是看着不错的.不过毕竟不是量身定做的,所以有的地方在自己的项目中还是要进行一点点小改动,因为实在是太喜欢这个插件了,所以第一次进到里面,看看原作者的思路和写法,然后才能知道如何去改成适合自己项目. 对于js我完全是一个非常业余的选手,下面根据自己的现状对这个插件做了分析,反正自己是搞明白怎么回事了,有分析不对的,还请高手指教. /*! * This plug-in is de

  • 制作高质量的JQuery Plugin 插件的方法

    JQuery Plugin插件,如果大家不明白什么是JQuery插件或都不清楚如何编写可以查看其官方的网站:jQuery Authoring Guidelines好了,下面有一些我觉得想做一个好的插件必须应有的要求: 1.在JQuery命名空间下声明只声明一个单独的名称 2.接受options参数,以便控制插件的行为 3.暴露插件的默认设置 ,以便外面可以访问 4.适当地将子函数提供给外部访问调用 5.保持私有函数 6.支持元数据插件 下面将逐条地过一遍: 只声明一个单独的名称 这表明是一个单独

  • MySql报错Table mysql.plugin doesn’t exist的解决方法

    一般产生原因是手工更改my.ini的数据库文件存放地址导致的 mysql服务启动时候找不到内置数据库"mysql",找不到那张表,就包了上述错误. 解决办法:将安装目录或之前的目录里面的"mysql"数据库拷贝到新的数据库文件存放目录即可

  • DIY jquery plugin - tabs标签切换实现代码

    Why DIY jquery tab 接触jquery 2,3个月了,一直都未动手写过插件.正好最近比较闲,就打算把一直看不顺眼的项目中现有的tab改造一番(现有的tab未能做成一个控件,copy,past的代码太多). 想着jQuery这么强大的库不可能没有tabs插件吧,赶紧搜了一下,哈,果然!jQuery tabs!心里一阵窃喜,赶紧load下来用用吧.可查看了一下它的用法,才发现不太适用现有的项目耶,我们的tab每一个都对应着一个完整的页面,是用iframe嵌入的.而jQuery tab

  • LazyForm jQuery plugin 定制您的CheckBox Radio和Select

    在下面浏览器下测试通过:Firefox, IE7, IE8, Google浏览器. (IE6还是算了吧),其它浏览器还没试过. 目前刚添加了4个皮肤,添加新皮肤非常方便,您可以参考已添加的皮肤图片和css代码,相信您会很快搞定. 效果截图: 一.在没有使用LazyForm的情况下,在XP下运行截图如下 二.使用LazyForm(皮肤Blue)效果如下三.使用LazyForm(皮肤Black)效果如下四.皮肤Default五.皮肤Graydemo.html代码如下: 复制代码 代码如下: <!DO

  • Maven的几个常用plugin

    maven-compiler-plugin 编译Java源码,一般只需设置编译的jdk版本 <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.6.0</version> <configuration> <source>1.8<

  • mysql自动停止 Plugin FEDERATED is disabled 的完美解决方法

    这两天新买的服务器mysql总是自动停止,查了日志 9:13:57 [Note] MySQL: Normal shutdown   9:13:57 [Note] Event Scheduler: Purging the queue. 0 events   9:13:57  InnoDB: Starting shutdown...   9:13:58  InnoDB: Shutdown completed; log sequence number 0 44273   9:13:58 [Note]

  • jQuery多媒体插件jQuery Media Plugin使用详解

    jQuery Media Plugin是一款基于jQuery的网页媒体播放器插件,它支持大部分的网络多媒体播放器和多媒体格式,比如:Flash, Windows Media Player, Real Player, Quicktime, MP3,Silverlight, PDF.它根据当前的脚本配置,自动将a标签替换成div,并生成object, embed甚至是iframe代码,至于生成object还是embed,jQuery Media会根据当前平台自动判别,因此兼容性方面非常出色.下面这段

随机推荐