jQuery實現(xiàn)的模擬彈出窗口功能示例
本文實例講述了jQuery實現(xiàn)的模擬彈出窗口功能。分享給大家供大家參考,具體如下:
//初始化文檔
$(document).ready();
//----------------彈出DIV仿模態(tài)窗口開始----------------
var divW; //DIV寬度
var divH; //DIV高度
var clientH; //瀏覽器高度
var clientW; //瀏覽器寬度
var divTitle; //DIV標題
var pageUrl; //DIV中加載的頁面
var div_X; //DIV橫坐標
var div_Y; //DIV縱坐標
function DivWindowOpen(divWidth,divHeight,title,url){
divW = divWidth; //DIV寬度
divH = divHeight; //DIV高度
divTitle = title; //DIV高度
pageUrl = url; //DIV中加載的頁面UR
lockScreen(); //鎖定背景
divOpen();
$("#divTitle").append(divTitle);
$("#divContent").load(pageUrl);
//交換X圖片
$("#x").hover(
function(){
$(this).attr("src","images/Close-2.gif");
},
function(){
$(this).attr("src","images/Close-1.gif");
}
);
//關閉DIV窗口
$("#x").click(
function(){
clearDivWindow();
clearLockScreen();
}
);
}
//返回彈出的DIV的坐標
function divOpen(){
var minTop = 80; //彈出的DIV記頂部的最小距離
if($("#divWindow").length == 0){
clientH = $(window).height(); //瀏覽器高度
clientW = $(window).width(); //瀏覽器寬度
div_X = (clientW - divW)/2; //DIV橫坐標
div_Y = (clientH - divH)/2; //DIV縱坐標
div_X += window.document.documentElement.scrollLeft; //DIV顯示的實際橫坐標
div_Y += window.document.documentElement.scrollTop; //DIV顯示的實際縱坐標
if(div_Y < minTop){
div_Y = minTop;
}
$("body").append("<div id='divWindow'><div id='divTitle'><img src='images/Close-1.gif' id='x' /></div><div id='divContent'>載入中</div></div>"); //增加DIV
//divWindow的樣式
$("#divWindow").css("position","absolute");
$("#divWindow").css("z-index","200");
$("#divWindow").css("left",(div_X + "px")); //定位DIV的橫坐標
$("#divWindow").css("top",(div_Y + "px")); //定位DIV的縱坐標
$("#divWindow").css("opacity","0.9");
$("#divWindow").width(divW);
$("#divWindow").height(divH);
$("#divWindow").css("background-color","#FFFFFF");
$("#divWindow").css("border","solid 1px #333333");
//divTitle的樣式
$("#divTitle").css("height","20px");
$("#divTitle").css("line-height","20px");
$("#divTitle").css("background-color","#333333");
$("#divTitle").css("padding","3px 5px 1px 5px");
$("#divTitle").css("color","#FFFFFF");
$("#divTitle").css("font-weight","bold");
//x的樣式
$("#x").css("float","right");
$("#x").css("cursor","pointer");
//divContent的樣式
$("#divContent").css("padding","10px");
}
else{
clientH = $(window).height(); //瀏覽器高度
clientW = $(window).width(); //瀏覽器寬度
div_X = (clientW - divW)/2; //DIV橫坐標
div_Y = (clientH - divH)/2; //DIV縱坐標
div_X += window.document.documentElement.scrollLeft; //DIV顯示的實際橫坐標
div_Y += window.document.documentElement.scrollTop; //DIV顯示的實際縱坐標
if(div_Y < minTop){
div_Y = minTop;
}
$("#divWindow").css("left",(div_X + "px")); //定位DIV的橫坐標
$("#divWindow").css("top",(div_Y + "px")); //定位DIV的縱坐標
}
}
//鎖定背景屏幕
function lockScreen(){
if($("#divLock").length == 0){ //判斷DIV是否存在
clientH = $(window).height(); //瀏覽器高度
clientW = $(window).width(); //瀏覽器寬度
//var docH = $("body").height(); //網(wǎng)頁高度
//var docW = $("body").width(); //網(wǎng)頁寬度
//var bgW = clientW > docW ? clientW : docW; //取有效寬
//var bgH = clientH > docH ? clientH : docH; //取有效高
$("body").append("<div id='divLock'></div>") //增加DIV
$("#divLock").height(clientH);
$("#divLock").width(clientW);
$("#divLock").css("display","block");
$("#divLock").css("background-color","#000000");
$("#divLock").css("position","fixed");
$("#divLock").css("z-index","100");
$("#divLock").css("top","0px");
$("#divLock").css("left","0px");
$("#divLock").css("opacity","0.5");
}
else{
clientH = $(window).height(); //瀏覽器高度
clientW = $(window).width(); //瀏覽器寬度
$("#divLock").height(clientH);
$("#divLock").width(clientW);
}
}
//清除背景鎖定
function clearLockScreen(){
$("#divLock").remove();
}
//清除DIV窗口
function clearDivWindow(){
$("#divWindow").remove();
}
//窗口大小改變時
$(window).resize(
function(){
if($("#divLock").length != 0){
lockScreen();
}
if($("#divWindow").length != 0){
divOpen();
}
}
);
//----------------彈出DIV仿模態(tài)窗口結(jié)束----------------
//改變風格
function ChangeStyle(styleName){
skinName = styleName;
//SetCookie("Skin", skinName);
alert(styleName);
window.location.reload();
}
更多關于jQuery相關內(nèi)容感興趣的讀者可查看本站專題:《jQuery窗口操作技巧總結(jié)》、《jQuery擴展技巧總結(jié)》、《jQuery常用插件及用法總結(jié)》、《jQuery拖拽特效與技巧總結(jié)》、《jQuery表格(table)操作技巧匯總》、《jquery中Ajax用法總結(jié)》、《jQuery常見經(jīng)典特效匯總》、《jQuery動畫與特效用法總結(jié)》及《jquery選擇器用法總結(jié)》
希望本文所述對大家jQuery程序設計有所幫助。
相關文章
jquery實現(xiàn)marquee效果(文字或者圖片的水平垂直滾動)
原本在前端html代碼中,實現(xiàn)文字或者圖片的水平垂直滾動,都是使用的marquee,但隨著考慮瀏覽器的兼容性和符合為w3c的標準,接下來介紹使用Jquery實現(xiàn)網(wǎng)頁marquee效果,感興趣的朋友可以了解下哦2013-01-01
用jQuery解決IE不支持的option disable屬性
使用jQuery解決IE不支持的option disable屬性2009-05-05
jQuery使用each方法與for語句遍歷數(shù)組示例
這篇文章主要介紹了jQuery使用each方法與for語句遍歷數(shù)組,結(jié)合實例形式簡單對比分析了兩種方法在遍歷數(shù)組時的實現(xiàn)技巧,具有一定參考借鑒價值,需要的朋友可以參考下2016-06-06

