這篇文章主要介紹了JavaScript點擊按鈕后彈出透明浮動層的方法,可實現(xiàn)點擊按鈕彈出居中的透明浮動層的效果,涉及javascript操作鼠標事件及頁面樣式的相關(guān)技巧,需要的朋友可以參考下
本文實例講述了JavaScript點擊按鈕后彈出透明浮動層的方法。分享給大家供大家參考。具體分析如下:
這里實現(xiàn)點擊后頁面變灰色,并用JS彈出一個居中的浮動層提示窗口,這個窗口是透明的,可以設(shè)置透明度,網(wǎng)上已經(jīng)有很多類似的JavaScript代碼,你可以借鑒一下。
- <HTML>
- <HEAD>
- <TITLE>浮動層居中的對話框效果演示</TITLE>
- <META http-equiv=Content-Type content="text/html; charset=utf-8">
- <STYLE type=text/css>
- HTML {
- HEIGHT: 100%
- }
- BODY {
- HEIGHT: 100%
- }
- BODY {
- FONT-SIZE: 14px; FONT-FAMILY: Tahoma, Verdana, sans-serif
- }
- DIV.neat-dialog-cont {
- Z-INDEX: 98; BACKGROUND: none transparent scroll repeat 0% 0%;
- LEFT: 0px; WIDTH: 100%; POSITION: absolute; TOP: 0px; HEIGHT: 100%
- }
- DIV.neat-dialog-bg {
- Z-INDEX: -1; FILTER: alpha(opacity=70); LEFT: 0px;
- WIDTH: 100%; POSITION: absolute; TOP: 0px; HEIGHT: 100%;
- BACKGROUND-COLOR: #eee; opacity: 0.7
- }
- DIV.neat-dialog {
- BORDER-RIGHT: #555 1px solid; BORDER-TOP: #555 1px solid;
- Z-INDEX: 99; MARGIN-LEFT: auto; BORDER-LEFT: #555 1px solid;
- WIDTH: 30%; MARGIN-RIGHT: auto; BORDER-BOTTOM: #555 1px solid;
- POSITION: relative; TOP: 25%; BACKGROUND-COLOR: #fff
- }
- DIV.neat-dialog-title {
- PADDING-RIGHT: 0.3em; PADDING-LEFT: 0.3em; FONT-SIZE: 0.8em;
- PADDING-BOTTOM: 0.1em; MARGIN: 0px; LINE-HEIGHT: 1.2em;
- PADDING-TOP: 0.1em; BORDER-BOTTOM: #444 1px solid; POSITION: relative
- }
- IMG.nd-cancel {
- RIGHT: 0.2em; POSITION: absolute; TOP: 0.2em
- }
- DIV.neat-dialog P {
- PADDING-RIGHT: 0.2em; PADDING-LEFT: 0.2em;
- PADDING-BOTTOM: 0.2em; PADDING-TOP: 0.2em; TEXT-ALIGN: center
- }
- </STYLE>
- <SCRIPT type=text/javascript>
- function NeatDialog(sHTML, sTitle, bCancel)
- {
- window.neatDialog = null;
- this.elt = null;
- if (document.createElement && document.getElementById)
- {
- var dg = document.createElement("div");
- dg.className = "neat-dialog";
- if (sTitle)
- sHTML = '<div class="neat-dialog-title">'+sTitle+
- ((bCancel)?
- '<img src="x.gif" alt="Cancel" class="nd-cancel" />':'')+
- '</div>/n' + sHTML;
- dg.innerHTML = sHTML;
- var dbg = document.createElement("div");
- dbg.id = "nd-bdg";
- dbg.className = "neat-dialog-bg";
- var dgc = document.createElement("div");
- dgc.className = "neat-dialog-cont";
- dgc.appendChild(dbg);
- dgc.appendChild(dg);
- if (document.body.offsetLeft > 0)
- dgc.style.marginLeft = document.body.offsetLeft + "px";
- document.body.appendChild(dgc);
- if (bCancel) document.getElementById("nd-cancel").onclick = function()
- {
- window.neatDialog.close();
- };
- this.elt = dgc;
- window.neatDialog = this;
- }
- }
- NeatDialog.prototype.close = function()
- {
- if (this.elt)
- {
- this.elt.style.display = "none";
- this.elt.parentNode.removeChild(this.elt);
- }
- window.neatDialog = null;
- }
- function openDialog()
- {
- var sHTML = '<p>你現(xiàn)在看到的是一個層窗口,是被JS控制彈出的</p>'+
- '<p><button onclick="window.neatDialog.close()">關(guān)閉</button></p>';
- new NeatDialog(sHTML, "你知道嗎?", false);
- }
- </SCRIPT>
- <BODY>
- <H1>浮動層居中的效果</H1>
- <BUTTON onclick=openDialog()>點此演示效果</BUTTON>
- </BODY>
- </HTML>
希望本文所述對大家的javascript程序設(shè)計有所幫助。
新聞熱點
疑難解答
圖片精選