zoukankan
html css js c++ java
[转] 用 JAVASCRIPT模拟的DOS界面
<
html
>
<
head
>
<
title
>
JavaScript-DOS
</
title
>
<
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?\n\n
"
+
"
Attention: Unabled CloseICO @o@\n\n
"
+
"
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?\n\n
"
+
"
Error #o#\n\n
"
+
"
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?\n\n
"
+
"
try more time ! ^-^\n\n
"
+
"
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
=
"
Welcome to 0009's blog ^_^
"
;
var
msg2
=
"
<a href=\
"
http:
//
0009.cnblogs.com\">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 onclick=\
"
window.parent.CloseButtonClick(
this
);\
"
>×<\/button>
"
+
"
<button onclick=\
"
window.parent.MaximizeButtonClick(
this
);\
"
>□<\/button>
"
+
"
<button onclick=\
"
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
"
,
"
100%; height: 100%; background: #3A6EA5;
"
);
win.document.styleSheets[
0
].addRule(
"
.Cmd
"
,
"
background: #fff; position: absolute; 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
"
,
"
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
>
查看全文
相关阅读:
解决App can’t be opened because it is from an unidentified developer
Mac之当前目录打开终端
Mac之安装zsh
毕业论文之降低重复率
Latex之希腊字母表 花体字母 实数集
latex之插入数学公式
好句收集
Python之两个列表一起打乱
Python之时间统计
Python之正则表达式
原文地址:https://www.cnblogs.com/temptation/p/815010.html
最新文章
从重构到重写
Android给拼接好的Bitmap加上个性化边框
Failed to fetch URL https://dl-ssl.google.com/android/repository/addons_list-2.xml
Android An unexpected exception occurred while creating a change object. see the error log for more details
Java安全通信:HTTPS与SSL
Android 绘图时实现双缓冲
java.lang.RuntimeException: Fail to connect to camera service
OpenCV开发环境搭建-并测试一个图像灰度处理程序
Android GridView使用View.GONE只隐藏内容而不隐藏空间的解决方案
Android 使用第三方登录(QQ和新浪微博)
热门文章
.net core响应缓存
Windows PowerShell 集成脚本环境 (ISE)
内网穿透的几种姿势
EntityFrameworkCore 单表树状结构配置
EntityFrameworkCore 一对一 && 一对多 && 多对多配置
angular form set dynamic control(form动态设置control)
Angular路由守卫 canDeactivate
Angular基本概念理解
Angular升级流程
sql server使用正则表达式
Copyright © 2011-2022 走看看