-------------------------------tipswindown.js------------------------------ ///------------------------------------------------------------------------- //jQuery彈出窗口 By Await [2009-11-22] //-------------------------------------------------------------------------- /*參數:[可選參數在調用時可寫可不寫,其餘爲必寫] ---------------------------------------------------------------------------- title: 窗口標題 content: 內容(可選內容爲){ text | id | img | url | iframe } width: 內容寬度 height: 內容高度 drag: 是否能夠拖動(ture爲是,false爲否) time: 自動關閉等待的時間,爲空是則不自動關閉 showbg: [可選參數]設置是否顯示遮罩層(0爲不顯示,1爲顯示) cssName: [可選參數]附加class名稱 ------------------------------------------------------------------------*/ //示例: //------------------------------------------------------------------------ //simpleWindown("例子","text:例子","500","400","true","3000","0","exa") //------------------------------------------------------------------------ var showWindown = true; var templateSrc = "http://www.7daysinn.cn"; //設置loading.gif路徑 function tipsWindown(title,content,width,height,drag,time,showbg,cssName,backcall) { $("#windown-box").remove(); //請除內容 var width = width>= 950?this.width=950:this.width=width; //設置最大窗口寬度 var height = height>= 527?this.height=527:this.height=height; //設置最大窗口高度 if(showWindown == true) { var simpleWindown_html = new String; simpleWindown_html = "<div id=\"windownbg\" style=\"height:"+$(document).height()+"px;filter:alpha(opacity=0);opacity:0;z-index: 999901\"></div>"; simpleWindown_html += "<div id=\"windown-box\">"; simpleWindown_html += "<div id=\"windown-title\"><h2></h2><span id=\"windown-close\">關閉</span></div>"; simpleWindown_html += "<div id=\"windown-content-border\"><div id=\"windown-content\"></div></div>"; simpleWindown_html += "</div>"; $("body").append(simpleWindown_html); show = false; } contentType = content.substring(0,content.indexOf(":")); content = content.substring(content.indexOf(":")+1,content.length); switch(contentType) { case "text": $("#windown-content").html(content); break; case "id": $("#windown-content").html($("#"+content+"").html()); break; case "img": $("#windown-content").ajaxStart(function() { $(this).html("<img src='"+templateSrc+"/images/loading.gif' class='loading' />"); }); $.ajax({ error:function(){ $("#windown-content").html("<p class='windown-error'>加載數據出錯...</p>"); }, success:function(html){ $("#windown-content").html("<img src="+content+" alt='' />"); } }); break; case "url": var content_array=content.split("?"); $("#windown-content").ajaxStart(function(){ $(this).html("<img src='"+templateSrc+"/images/loading.gif' class='loading' />"); }); $.ajax({ type:content_array[0], url:content_array[1], data:content_array[2], error:function(){ $("#windown-content").html("<p class='windown-error'>加載數據出錯...</p>"); }, success:function(html){ $("#windown-content").html(html); if(backcall) backcall(); } }); break; case "iframe": $("#windown-content").ajaxStart(function(){ $(this).html("<img src='"+templateSrc+"/images/loading.gif' class='loading' />"); }); $.ajax({ error:function(){ $("#windown-content").html("<p class='windown-error'>加載數據出錯...</p>"); }, success:function(html){ $("#windown-content").html("<iframe src=\""+content+"\" width=\"100%\" height=\""+parseInt(height)+"px"+"\" scrolling=\"auto\" frameborder=\"0\" marginheight=\"0\" marginwidth=\"0\"></iframe>"); } }); } $("#windown-title h2").html(title); if(showbg == "true") {$("#windownbg").show();}else {$("#windownbg").remove();}; $("#windownbg").animate({opacity:"0.5"},"normal");//設置透明度 $("#windown-box").show(); if( height >= 527 ) { $("#windown-title").css({width:(parseInt(width)+22)+"px"}); $("#windown-content").css({width:(parseInt(width)+17)+"px",height:height+"px"}); }else { $("#windown-title").css({width:(parseInt(width)+10)+"px"}); $("#windown-content").css({width:width+"px",height:height+"px"}); } var cw = document.documentElement.clientWidth,ch = document.documentElement.clientHeight,est = document.documentElement.scrollTop; var _version = $.browser.version; if ( _version == 6.0 ) { $("#windown-box").css({left:"50%",top:(parseInt((ch)/2)+est)+"px",marginTop: -((parseInt(height)+53)/2)+"px",marginLeft:-((parseInt(width)+32)/2)+"px",zIndex: "999999"}); }else { $("#windown-box").css({left:"50%",top:"50%",marginTop:-((parseInt(height)+53)/2)+"px",marginLeft:-((parseInt(width)+32)/2)+"px",zIndex: "999999"}); }; var Drag_ID = document.getElementById("windown-box"),DragHead = document.getElementById("windown-title"); var moveX = 0,moveY = 0,moveTop,moveLeft = 0,moveable = false; if ( _version == 6.0 ) { moveTop = est; }else { moveTop = 0; } var sw = Drag_ID.scrollWidth,sh = Drag_ID.scrollHeight; DragHead.onmouseover = function(e) { if(drag == "true"){DragHead.style.cursor = "move";}else{DragHead.style.cursor = "default";} }; DragHead.onmousedown = function(e) { if(drag == "true"){moveable = true;}else{moveable = false;} e = window.event?window.event:e; var ol = Drag_ID.offsetLeft, ot = Drag_ID.offsetTop-moveTop; moveX = e.clientX-ol; moveY = e.clientY-ot; document.onmousemove = function(e) { if (moveable) { e = window.event?window.event:e; var x = e.clientX - moveX; var y = e.clientY - moveY; if ( x > 0 &&( x + sw < cw) && y > 0 && (y + sh < ch) ) { Drag_ID.style.left = x + "px"; Drag_ID.style.top = parseInt(y+moveTop) + "px"; Drag_ID.style.margin = "auto"; } } } document.onmouseup = function () {moveable = false;}; Drag_ID.onselectstart = function(e){return false;} } $("#windown-content").attr("class","windown-"+cssName); if( time == "" || typeof(time) == "undefined") { $("#windown-close").click(function() { showselect('t123_') $("#windownbg").remove(); $("#windown-box").fadeOut("slow",function(){$(this).remove();}); }); }else { setTimeout(closeWindown,time); } hideselect('t123_'); } var closeWindown = function() { showselect('t123_'); $("#windownbg").remove(); $("#windown-box").fadeOut("slow",function(){$(this).remove();}); } function hideselect(per) { var _version = $.browser.version; if ( _version == 6.0 ) { $("select",document).each(function(){ if($(this).attr('name')) { if($(this).attr('name').substring(0,5)==per) { name = $(this).attr('name').substring(5); $(this).attr('name',name); $(this).css('display',''); } if($(this).css('display')!='none') { name = per+$(this).attr('name'); $(this).attr('name',name); } $(this).css('display','none'); } }); } } function showselect(per) { var _version = $.browser.version; if ( _version == 6.0 ) { $("select",document).each(function(){ if($(this).attr('name')) { if($(this).attr('name').substring(0,5)==per) { name = $(this).attr('name').substring(5); $(this).attr('name',name); $(this).css('display',''); } } }); } } ---------------------------style.css---------------------------------- <style type="text/css"> .mainlist{padding:10px;} .mainlist div {margin:0 5px 0 0;font-family:"宋體";font-size:12px;font-weight:400;color:#ddd;} .btnbox{text-align:center;height:30px;padding-top:10px;background:#ECF9FF;} #windownbg{display:none;position:absolute;width:100%;height:100%;background:#000;top:0;left:0;} #windown-box{position:fixed;_position:absolute;border:5px solid #E9F3FD;background:#FFF;text-align:left;} #windown-title{position:relative;height:30px;border:1px solid #A6C9E1;overflow:hidden;background:url(/images/tipbg.png) 0 0 repeat-x;} #windown-title h2{position:relative;left:10px;top:5px;font-size:14px;color:#666;} #windown-close{position:absolute;right:10px;top:8px;width:10px;height:16px;text-indent:-10em;overflow:hidden;background:url(/images/tipbg.png) 100% -49px no-repeat;cursor:pointer;} #windown-content-border{position:relative;top:-1px;border:1px solid #A6C9E1;padding:5px 0 5px 5px;} #windown-content img,#windown-content iframe{display:block;} #windown-content .loading{position:absolute;left:50%;top:50%;margin-left:-8px;margin-top:-8px;} </style> ---------------------------------html------------------------------ <script type="text/javascript"> /* *彈出本頁指定ID的內容於窗口 *id 指定的元素的id *title: window彈出窗的標題 *width: 窗口的寬,height:窗口的高 */ function showTipsWindown(title, id, width, height) { tipsWindown(title, "id:" + id, width, height, "true", "", "true", id); } function confirmTerm(s) { parent.closeWindown(); if (s == 1) { parent.document.getElementById("isread").checked = true; } } //彈出層調用 function popTips() { showTipsWindown("jQuery彈出層", 'simTestContent', 600, 255); $("#isread").attr("checked", false); } </script> <div style="display:none;"> <div id="simTestContent" class="simScrollCont"> <div class="mainlist" > <div style="overflow:auto; overflow-x:hidden; height:240px; "> <li><span>?</span><a href="#" target="_blank">javascript彈出層插件可自定義js彈出層動畫特效</a></li> <li><span>?</span><a href="#" target="_blank">jquery彈出層鼠標點擊彈出層可浮動在屏幕滾動</a></li> <li><span>?</span><a href="#" target="_blank">jquery彈出層特效animate製做相似flash動畫效果彈出層</a></li> <li><span>?</span><a href="#" target="_blank">jquery 彈出層 點擊按鈕彈出層兼容IE和firefox瀏覽器</a></li> <li><span>?</span><a href="#" target="_blank">jquery 彈出層插件 鼠標點擊文字獲取標題彈出層內容信息</a></li> <li><span>?</span><a href="#" target="_blank">jquery 彈出層插件 ThickBox 多功能彈出層插件支持圖片、ajax、內嵌內容彈等</a></li> <li><span>?</span><a href="#" target="_blank">jquery 彈出層插件FancyBox彈出層演示支持圖片、文章內容、flash swf彈出層等</a></li> <li><span>?</span><a href="#" target="_blank">jquery彈出層鼠標點擊彈出層可浮動在屏幕滾動</a></li> <li><span>?</span><a href="#" target="_blank">jquery彈出層特效animate製做相似flash動畫效果彈出層</a></li> <li><span>?</span><a href="#" target="_blank">jquery 彈出層 點擊按鈕彈出層兼容IE和firefox瀏覽器</a></li> <li><span>?</span><a href="#" target="_blank">jquery 彈出層插件 鼠標點擊文字獲取標題彈出層內容信息</a></li> <li><span>?</span><a href="#" target="_blank">jquery 彈出層插件 ThickBox 多功能彈出層插件支持圖片、ajax、內嵌內容彈等</a></li> <li><span>?</span><a href="#" target="_blank">jquery 彈出層插件FancyBox彈出層演示支持圖片、文章內容、flash swf彈出層等</a></li> <li><span>?</span><a href="#" target="_blank">javascript彈出層插件可自定義js彈出層動畫特效</a></li> <li><span>?</span><a href="#" target="_blank">jquery彈出層鼠標點擊彈出層可浮動在屏幕滾動</a></li> <li><span>?</span><a href="#" target="_blank">jquery彈出層特效animate製做相似flash動畫效果彈出層</a></li> <li><span>?</span><a href="#" target="_blank">jquery 彈出層 點擊按鈕彈出層兼容IE和firefox瀏覽器</a></li> <li><span>?</span><a href="#" target="_blank">jquery 彈出層插件 鼠標點擊文字獲取標題彈出層內容信息</a></li> <li><span>?</span><a href="#" target="_blank">jquery 彈出層插件 ThickBox 多功能彈出層插件支持圖片、ajax、內嵌內容彈等</a></li> <li><span>?</span><a href="#" target="_blank">jquery 彈出層插件FancyBox彈出層演示支持圖片、文章內容、flash swf彈出層等</a></li> <li><span>?</span><a href="#" target="_blank">jquery彈出層鼠標點擊彈出層可浮動在屏幕滾動</a></li> <li><span>?</span><a href="#" target="_blank">jquery彈出層特效animate製做相似flash動畫效果彈出層</a></li> <li><span>?</span><a href="#" target="_blank">jquery 彈出層 點擊按鈕彈出層兼容IE和firefox瀏覽器</a></li> <li><span>?</span><a href="#" target="_blank">jquery 彈出層插件 鼠標點擊文字獲取標題彈出層內容信息</a></li> <li><span>?</span><a href="#" target="_blank">jquery 彈出層插件 ThickBox 多功能彈出層插件支持圖片、ajax、內嵌內容彈等</a></li> <li><span>?</span><a href="#" target="_blank">jquery 彈出層插件FancyBox彈出層演示支持圖片、文章內容、flash swf彈出層等</a></li> </div> </div> </div><!--simTestContent end--> </div>