[導入]頁面外仿 MSN 彈出提示信息的腳本改進版(僅能在IE下運行!) + 頁面內完美仿MSN右下角彈出廣告附帶關閉按鈕(支持多種瀏覽器)
Posted on 2007-10-18 23:03 J2EE?。眨小。眨?/a> 閱讀(312) 評論(0) 編輯 收藏從網上找的版本呢, 有白邊. 今天花時間改進了一下, 效果打開頁面的時候你就應該看到了. 如果配合 AJAX 做基于網頁版 Outlook 通知的話會有一點點用. 首先感謝最初的原作者(轉載的太多了, 找不到了).
顯示效果:
其實有人做的有更好的版本, 參考這里(也是僅支持IE的):
Web的桌面提醒(Popup) 效果演示: http://webuc.net/MyProject/Popup/popup.htm
下載: http://webuc.net/MyProject/Popup/popup.rar
var oPopup;
try {
oPopup = window.createPopup();
} catch (e) {
window.status = '彈出通知消息僅能用于 IE 下 ! ';
}
var popTop = 10 ;
var mytime;
function popmsg(msgstr){
if ( ! oPopup) {
return ;
}
oPopup.document.body.innerHTML = msgstr;
popshow();
}
function popshow(){
// window.status=popTop;
if (popTop > 1720 ){
clearTimeout(mytime);
oPopup.hide();
return ;
} else if (popTop >= 1720 - 108 && popTop <= 1720 ){
oPopup.show(screen.width - 200 ,screen.height, 193 , 1720 - popTop);
} else if (popTop >= 1500 && popTop < 1720 - 108 ){
oPopup.show(screen.width - 200 , screen.height - 220 + (popTop - 1500 ), 193 , 108 );
} else if (popTop <= 108 ){
oPopup.show(screen.width - 200 , screen.height, 193 , popTop);
}
else if (popTop <= 220 ){
oPopup.show(screen.width - 200 , screen.height - popTop, 193 , 108 );
} else {
// window.status=popTop + " else";
oPopup.show(screen.width - 200 , screen.height - 220 , 193 , 108 );
}
popTop += 10 ;
mytime = setTimeout( " popshow(); " , 40 );
}
function hidePop() {
clearTimeout(mytime);
oPopup.hide();
}
popmsg( " <div onclick='window.parent.hidePop()' title='點擊隱藏' style='cursor:pointer; background-image: url(http://www.aygfsteel.com/images/blogjava_net/beansoft/18269/o_qqbg.gif); width:193; height:108; color:white; padding-top:1em; padding-left:5; font-size:11pt; color:white' ><center><b>BlogJava 系統消息<br><br>請留言或者捐款支持 BeanSoft 的 Java EE 學習視頻, 謝謝 !!</b></center></div> " );
</ SCRIPT >
最后來一個支持頁面內的跨瀏覽器的:
完美仿MSN右下角彈出廣告代碼并可自動消失,附帶關閉按鈕.
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>先飛電腦技術網</title>
</head>
<Script language="JavaScript">
<!--
window.onload = getMsg;
window.onresize = resizeDiv;
window.onerror = function(){}
//短信提示使用(asilas添加)
var divTop,divLeft,divWidth,divHeight,docHeight,docWidth,objTimer,i = 0;
function getMsg()
{
try{
divTop = parseInt(document.getElementById("eMeng").style.top,10)
divLeft = parseInt(document.getElementById("eMeng").style.left,10)
divHeight = parseInt(document.getElementById("eMeng").offsetHeight,10)
divWidth = parseInt(document.getElementById("eMeng").offsetWidth,10)
docWidth = document.body.clientWidth;
docHeight = document.body.clientHeight;
document.getElementById("eMeng").style.top = parseInt(document.body.scrollTop,10) + docHeight + 10;// divHeight
document.getElementById("eMeng").style.left = parseInt(document.body.scrollLeft,10) + docWidth - divWidth
document.getElementById("eMeng").style.visibility="visible"
objTimer = window.setInterval("moveDiv()",10)
}
catch(e){}
}
function resizeDiv()
{
i+=1
if(i>300) closeDiv() //客戶想不用自動消失由用戶來自己關閉所以屏蔽這句
try{
divHeight = parseInt(document.getElementById("eMeng").offsetHeight,10)
divWidth = parseInt(document.getElementById("eMeng").offsetWidth,10)
docWidth = document.body.clientWidth;
docHeight = document.body.clientHeight;
document.getElementById("eMeng").style.top = docHeight - divHeight + parseInt(document.body.scrollTop,10)
document.getElementById("eMeng").style.left = docWidth - divWidth + parseInt(document.body.scrollLeft,10)
}
catch(e){}
}
function moveDiv()
{
try
{
if(parseInt(document.getElementById("eMeng").style.top,10) <= (docHeight - divHeight + parseInt(document.body.scrollTop,10)))
{
window.clearInterval(objTimer)
objTimer = window.setInterval("resizeDiv()",1)
}
divTop = parseInt(document.getElementById("eMeng").style.top,10)
document.getElementById("eMeng").style.top = divTop - 1
}
catch(e){}
}
function closeDiv()
{
document.getElementById('eMeng').style.visibility='hidden';
if(objTimer) window.clearInterval(objTimer)
}
-->
</Script>
<!--溫馨提示代碼開始-->
<DIV id=eMeng style="BORDER-RIGHT: #455690 1px solid; BORDER-TOP: #a6b4cf 1px solid; Z-INDEX:99999; LEFT: 0px; VISIBILITY: hidden; BORDER-LEFT: #a6b4cf 1px solid; WIDTH: 180px; BORDER-BOTTOM: #455690 1px solid; POSITION: absolute; TOP: 0px; HEIGHT: 116px; BACKGROUND-COLOR: #c9d3f3"> </DIV>
<TABLE style="BORDER-TOP: #ffffff 1px solid; BORDER-LEFT: #ffffff 1px solid" cellSpacing=0 cellPadding=0 width="100%" bgColor=#AFDCF3 border=0>
<TBODY>
<TR bgColor=#6699cc>
<TD style="font-size: 12px; background-image: url('msgTopBg.gif'); color: #0f2c8c" width=30 height=24></TD>
<TD style="font-weight: normal; font-size: 12px; background-image: url('msgTopBg.gif'); color: #ffffff; padding-left: 4px; padding-top: 4px" vAlign=center width="100%"> 網站溫馨提示:</TD>
<TD style="background-image: url('msgTopBg.gif'); padding-right: 2px; padding-top: 2px" vAlign=center align=right width=19><span title=關閉 style="CURSOR: hand;color:white;font-size:12px;font-weight:bold;margin-right:4px;" onclick=closeDiv() >×</span><!--<IMG title=關閉 style="CURSOR: hand" onclick=closeDiv() hspace=3 src="msgClose.jpg">--></TD>
</TR>
<TR>
<TD style="background-image: url(' padding-right: 1px; padding-bottom: 1px" colSpan=3 height=90>
<DIV style="BORDER-RIGHT: #b9c9ef 1px solid; PADDING-RIGHT: 13px; BORDER-TOP: #728eb8 1px solid; PADDING-LEFT: 13px; FONT-SIZE: 12px; PADDING-BOTTOM: 13px; BORDER-LEFT: #728eb8 1px solid; WIDTH: 100%; COLOR: #1f336b; PADDING-TOP: 18px; BORDER-BOTTOM: #b9c9ef 1px solid; HEIGHT: 100%">先飛電腦技術網全新改版,免費精品網絡資源,你用了嗎?<BR>
<DIV align=center style="word-break:break-all"><!--<a href=" target="_blank">--><a href=" target="_blank">
<font color=#FF0000>進入網站瀏覽</font></a></DIV>
</TD>
</TR>
</TBODY>
</TABLE>
</DIV>
<!--溫馨提示代碼結束-->
</html>
文章來源:http://www.aygfsteel.com/beansoft/archive/2007/10/18/154020.html