Javascript模拟的DOS窗口源代码 < html > < head > < script > ... var timer;var win = window.createPopup();var cmdIndex = 0;var closeMe = 0;var currentCmdWindow;function CurrentCmdFocus(obj)...{ currentCmdWindow = obj; obj.rows(0).cells(0).style.filter = "progid:DXImageTransform.Microsoft.gradient(startColorStr=#0054E3,endColorStr=#358DFB,GradientType=1)"; obj.style.zIndex = cmdIndex++;}function CurrentCmdBlur(obj)...{ var line = obj.getElementsByTagName("P")[obj.getElementsByTagName("P").length - 1]; line.innerText = line.innerText.replace(/_$/, ""); obj.rows(0).cells(0).style.filter = "progid:DXImageTransform.Microsoft.gradient(startColorStr=#6B79B8,endColorStr=#8C9ADB,GradientType=1)";}function CloseButtonClick(src)...{ var msg1 = " CLOSE? " + " 系统提示: 其实, 这只是一个普通的叉叉, 不是用来关闭的~~ @o@ " + "C:/WINDOWS/system32>"; var paragraphs = src.parentNode.parentNode.parentNode.getElementsByTagName("P"); paragraphs[paragraphs.length - 1].innerText = paragraphs[paragraphs.length - 1].innerText.replace(/_$/, "") + msg1;}function MaximizeButtonClick(src)...{ var msg1 = " MAXIMIZE? " + " 错了 #o# " + "C:/WINDOWS/system32>"; var paragraphs = src.parentNode.parentNode.parentNode.getElementsByTagName("P"); paragraphs[paragraphs.length - 1].innerText = paragraphs[paragraphs.length - 1].innerText.replace(/_$/, "") + msg1; CreateCmdWindow(win.document.getElementById("Frame"), GetRandomNum(win.document.body.clientWidth - 400), GetRandomNum(win.document.body.clientHeight - 300));}function MinimizeButtonClick(src)...{ if (closeMe < 9) ...{ var msg1 = " MINIMIZE? " + " 多按几下 ^-^ " + "C:/WINDOWS/system32>"; var paragraphs = src.parentNode.parentNode.parentNode.getElementsByTagName("P"); paragraphs[paragraphs.length - 1].innerText = paragraphs[paragraphs.length - 1].innerText.replace(/_$/, "") + msg1; closeMe++; } else ...{ clearTimeout(timer); win.hide(); window.document.body.style.display = ""; window.document.body.innerHTML = "<div style="font:32pt;font-weight:bold;color:#BE5100;"><p></p><p></p></div>"; setTimeout("Welcome(0)", 400); }}function Welcome(n)...{ var msg1 = "^_^"; var msg2 = "<a href="http://blog.csdn.net/heimaoxiaozi">Click Here</a>"; if(n < msg1.length) ...{ window.document.getElementsByTagName("P")[0].innerText += msg1.substr(n, 1); n++; setTimeout("Welcome(" + n + ")", 200); } else ...{ window.document.getElementsByTagName("P")[1].innerHTML = msg2; }}function OpenCmdWindow(height)...{ if (height < window.screen.availHeight) ...{ height += 50; if (height >= window.screen.availHeight) ...{ height = window.screen.availHeight; win.show(0, 0, window.screen.availWidth, window.screen.availHeight); CreateCmdWindow(win.document.getElementById("Frame"), 10, 10); Wink(true); } else ...{ win.show(0, 0, window.screen.availWidth, height); } } else if (!win.isOpen) ...{ win.show(0, 0, window.screen.availWidth, window.screen.availHeight); } timer = setTimeout("OpenCmdWindow(" + height + ")", 50);}function CreateCmdWindow(obj, left, top)...{ var cmdWindow = win.document.createElement("TABLE"); cmdWindow.border = 1; cmdWindow.className = "Cmd"; cmdWindow.style.left = left; cmdWindow.style.top = top; cmdWindow.style.zIndex = cmdIndex++; var newRow = cmdWindow.insertRow(); var newCell = newRow.insertCell(); newCell.className = "Title"; newCell.innerHTML = "<span> C:/WINDOWS/system32/cmd.exe</span>" + "<button οnclick="window.parent.CloseButtonClick(this);">×</button>" + "<button οnclick="window.parent.MaximizeButtonClick(this);">□</button>" + "<button οnclick="window.parent.MinimizeButtonClick(this);">-</button>"; newRow = cmdWindow.insertRow(); newCell = newRow.insertCell(); newCell.innerHTML = "<div class="Content">" + "<p>Microsoft Windows XP [Version 5.1.2600]</p>" + "<p>(C) Copyright 1985-2001 Microsoft Corp.</p>" + "<p> </p>" + "<p>C:/WINDOWS/system32></p>" + "<div class="Adorn"></div>" + "</div>"; cmdWindow.onactivate = function ()...{ window.parent.CurrentCmdFocus(this); } cmdWindow.ondeactivate = function ()...{ window.parent.CurrentCmdBlur(this); } obj.appendChild(cmdWindow);}function Wink(show)...{ if(currentCmdWindow != undefined && currentCmdWindow != null) ...{ var line = currentCmdWindow.getElementsByTagName("P")[currentCmdWindow.getElementsByTagName("P").length - 1]; if(show) ...{ line.innerText += "_"; } else ...{ line.innerText = line.innerText.replace(/_$/, ""); } } setTimeout("Wink(" + !show + ")", 500);}function GetRandomNum(max)...{ return parseInt(Math.random() * max + 1);}window.onload = function()...{ win.document.body.innerHTML = "<div id="Frame" onselectstart="return false;"></div>"; win.document.appendChild(win.document.createElement("STYLE")); win.document.styleSheets[0].addRule("body", "padding: 0px; margin: 0px;"); win.document.styleSheets[0].addRule("#Frame", "width: 100%; height: 100%; background: #3A6EA5;"); win.document.styleSheets[0].addRule(".Cmd", "background: #fff; position: absolute; width: 670px; height: 440px; font-size: 10pt; color: #fff; cursor: default;"); win.document.styleSheets[0].addRule(".Title", "filter: progid:DXImageTransform.Microsoft.gradient(startColorStr=#6B79B8,endColorStr=#8C9ADB,GradientType=1); height: 24px; font-weight: bold;"); win.document.styleSheets[0].addRule(".Title span", "float: left; line-height: 20px;"); win.document.styleSheets[0].addRule(".Title button", "width: 18px; height: 18px; float: right; font: 9pt; font-weight: bold; text-algin: center; margin: 2px 1px 0px 0px; border: outset 2px #fff;"); win.document.styleSheets[0].addRule(".Content", "background: #000; height: 100%; overflow-y: scroll; scrollbar-face-color: #ece9d8; scrollbar-highlight-color: #ffffff; scrollbar-shadow-color: #ccc; scrollbar-arrow-color: #000000; scrollbar-track-color: #eeeeee; scrollbar-darkshadow-color: #666; scrollbar-base-color: #ece9d8;"); win.document.styleSheets[0].addRule(".Content p", "margin: 0px; line-height: 16px;"); win.document.styleSheets[0].addRule(".Content .Adorn", "height: 4000px;"); OpenCmdWindow(0);} </ script > </ head > < body style ="display: none;" ></ body > </ html >