<!DOCTYPE html>
<html lang="zh-cn">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1,maximum-scale=1, user-scalable=no">
<title>中间浮窗</title>
<link href="css/basic.css" rel="stylesheet">
<script src="js/jquery-1.10.1.min.js"></script>
</head>
<body>
<div style="height:10000px;"></div>
<style type="text/css">
/*建议先隐藏浮窗的样式 display:none*/
.j-fixcenter{ height:120px; width:219px; background:#f60; display:none; position:fixed; }
</style>
<div id="fixCenter" class="j-fixcenter">
<img src="img/fixCenter.jpg" width="219" height="120" usemap="#fixCenterMap">
<!--绘制地图,把图片哪个位置要点击的绘制出来-->
<map name="fixCenterMap" id="fixCenterMap">
<area shape="rect" coords="175,0,219,30" href="javascript:void();" id="closeFixCenter" />
<area shape="rect" coords="0,30,219,94" href ="###2" />
<area shape="rect" coords="0,94,219,120" href ="###3" />
</map>
</div>
<script type="text/javascript">
$(function(){
//调用浮窗方法
fixCenter();
});
//当调整浏览器窗口的大小时,发生 resize 事件
$(window).resize(function(){
//重置浮窗定位
fixCenterGetPosition();
});
function fixCenter(){
//获取浮窗定位
fixCenterGetPosition();
//获取在浮窗的元素ID
var fid = $("#fixCenter");
//渐变显示元素
fid.fadeIn(600);
//关闭按钮的点击事件
$("#closeFixCenter").click(function(){
//渐变隐藏元素,三秒后重新显示
fid.fadeOut(600).delay(3000).fadeIn(600);
});
}
function fixCenterGetPosition(){
var fid = $("#fixCenter");
//获取当前窗口的高度
var h = $(window).height();
//获取当前窗口的宽度
var w = $(window).width();
//计算要定位左侧距离
var left = (w/2) - parseInt(fid.css("width")) / 2;
//计算要定位上侧距离
var top = (h/2) - parseInt(fid.css("height")) / 2;
//设置定位距离的样式
fid.css({"left":(left) + "px", "top": (top) + "px" });
}
</script>
</body>
</html>
?
效果图:
?
?
?
?
原文:http://onestopweb.iteye.com/blog/2294832