弹出窗口其实代码非常简单:

<SCRIPT language=javascript type=text/javascript><!-
  window.open ('page.html')
-></SCRIPT>

因为这是一段javascript代码,所以它们应该放在<SCRIPT LANGUAGE =”javascript”>标签和</script>之间。<!–和–>是对一些版本低的浏览器起作用,在这些老浏览器中如果不支持javascript,不会将标签中的代码作为文本显示出来。
Window.open (‘page.html’)用于控制弹出新的窗口page.html,如果page.html不与主窗口在同一路径下,前面应写明路径,绝对路径(http://)和相对路径(../)均可。
用单引号和双引号都可以,只是不要混用。
这一段代码可以加入HTML的任意位置,加入到<head>和</head>之间也可以,位置越靠前执行越早,尤其是页面代码较长时,又想使页面早点弹出就尽量往前放。
【经过设置后的弹出窗口】
下面再说一说弹出窗口外观的设置。只要再往上面的代码中加一点东西就可以了。
我们来定制这个弹出窗口的外观、尺寸大小、弹出位置以适应该页面的具体情况。

<SCRIPT LANGUAGE="javascript">
 window.open(‘page.html’,'newwindow’,'height=100,width=400,top=0,left=0,toolbar=no,menubar=no,scrollbars=no,resizable=no,
location=no,status=no’)//写成一行
</SCRIPT>

参数解释:

<SCRIPT LANGUAGE=”javascript”> js脚本开始;
window.open 弹出新窗口的命令;
page.html 弹出新窗口的文件名;
newwindow 弹出窗口的名字(不是文件名),可用空 ″代替;
height=100 窗口高度;
top=0 窗口距离屏幕上方的像素值;
left=0 窗口距离屏幕左侧的像素值;
toolbar=no 是否显示工具栏,yes为显示;
menubar,scrollbars 表示菜单栏和滚动栏;
resizable=no 是否允许改变窗口大小,yes为允许;
location=no 是否显示地址栏,yes为允许;
status=no 是否显示状态栏内的信息(通常是文件已经打开),yes为允许;
</SCRIPT> js脚本结束。

【用函数控制弹出窗口】

下面是一个完整的代码。

<html>
<head>
<script LANGUAGE=”javascript”>
<!–
function openwin(){
window.open(“page.html”,”newwindow”,”height=100,width=400,toolbar=no,menubar=no,scrollbars=no,resizable=no,
location=no,status=no”)//写成一行
}
–>
</script>
</head>
<body onload=”openwin()”>
…任意的页面内容…
</body>
</html>

这里定义了一个函数openwin(),函数内容就是打开一个窗口。在调用它之前没有任何用途。怎么调用呢?

方法一:<body onload=”openwen()”> 浏览器读页面时弹出窗口;

方法二:<body onunload=”openwen()”> 浏览器离开页面时弹出窗口;

方法三:用一个连接调用:<a href=”#” onclick=”openwin()”>打开一个窗口</a>
注意:使用的”#”是虚连接。

方法四:用一个按钮调用:<input type=”button” onclick=”openwin()” value=”打开窗口”>

【主窗口打开文件1.htm,同时弹出小窗口page.html】

将如下代码加入主窗口<head>区:

<script language=”javascript”>
<!–
function openwin(){
window.open(“page.html”,”",”width=200,height=200″)
}
//–>
</script>

加入<body>区的代码:
<a href=”1.htm” onclick=”openwin()”>open</a>即可。

【弹出的窗口之定时关闭控制】

下面我们再对弹出窗口进行一些控制,效果就更好了。如果我们再将一小段代码加入弹出的页面(注意是加入到page.html的HTML中,可不是主页面中,否则…),让它在10秒钟后自动关闭是不是更酷了?

首先,将如下代码加入page.html文件的<head>区:

<script language=”javascript”>
function closeit() {
setTimeout(“self.close()”,10000) //毫秒
}
</script>

然后,再用<body onload=”closeit()”>这一句话代替page.html中原有的<BODY>这一句就可以了。(这一句话千万不要忘记写啊!这一句的作用是调用关闭窗口的代码,10秒钟后就自行关闭该窗口。)

【在弹出窗口中加上一个关闭按钮】

<FORM>
<INPUT TYPE=’BUTTON’ VALUE=’关闭’ onClick=’window.close()’>
</form>

呵呵,现在更加完美了!

【内包含的弹出窗口——一个页面两个窗口】

上面的例子都包含两个窗口,一个是主窗口,另一个是弹出的小窗口。

通过下面的例子,你可以在一个页面内完成上面的效果。

<html>
<head>
<SCRIPT LANGUAGE=”javascript”>
function openwin()
{
OpenWindow=window.open(“”,”newwin”,”height=250,width=250,toolbar=no,scrollbars=”+scroll+”,menubar=no”);//写成一行
OpenWindow.document.write(“<TITLE>例子</TITLE>”)
OpenWindow.document.write(“<BODY BGCOLOR=#FFFFFF>”)
OpenWindow.document.write(“<H1>Hello!</h1>”)
OpenWindow.document.write(“New window opened!”)
OpenWindow.document.write(“</BODY >”)
OpenWindow.document.write(“</HTML>”)
OpenWindow.document.close()
};
</script>
</head>
<body>
<a href=”#” onclick=”openwin()”>打开一个窗口</a>
<input type=”button” onclick=”openwin()” value=”打开窗口”>
</body> 
</html>

看看OpenWindow.document.write()里面的代码不就是标准的HTML吗?只要按照格式写更多的行即可。千万注意多一个标签或少一个标签都会出现错误。记住用OpenWindow.document.close()结束啊。

【终极应用——弹出窗口的Cookie控制】

回想一下,上面的弹出窗口虽然酷,但是有一点小毛病(你沉浸在喜悦之中,一定没有发现吧?)比如你将上面的脚本放在一个需要频繁经过的页面里(例如首页),那么每次刷新这个页面,窗口都会弹出一次,是不是非常烦人?有解决的办法吗?Yes!Follow me。我们使用Cookie来控制一下就可以了。

首先,将如下代码加入主页面HTML的<HEAD>区:

<script>
function openwin(){
window.open(“page.html”,”",”width=200,height=200″)
}
function get_cookie(Name){
var search = Name+ "="
var returnvalue ="";
if (documents.cookie.length >0){
offset = documents.cookie.indexOf(search)
if (offset!=-1){
offset += search.length
end = documents.cookie.indexOf (“;”,offset);
if (end ==-1)
end = documents.cookie.length;
returnvalue =unescape(documents.cookie.substring(offset,end))
}
}
return returnvalue;
}
function loadpopup(){
if (get_cookie(‘popped’)==”){
openwin()
documents.cookie=”popped=yes”
}
}
</script>

然后,用<body onload=”loadpopup()”>(注意不是openwin 而是loadpop啊)替换主页面中原有的<BODY>这一句即可。你可以试着刷新一下这个页面或重新进入该页面,窗口再也不会弹出了。真正的Pop-Only-Once!

写到这里,弹出窗口的制作和应用技巧基本上算是讲完了,希望对正在制作网页的朋友有所帮助我就非常欣慰了。

需要注意的是,JS脚本中的大小写最好前后保持一致。

a 关闭跳出窗口代码:

<script language=”javascript”>
<!–
var exit=true;
function ext()
{
if (exit)
window.open (‘http://ituibar.com’);
}
//–>
</script>
<body onunload=”exit()”>

b 禁止另存代码;

<NOSCRIPT><IFRAME SRC=*.html></IFRAME></NOSCRIPT>

c 最大化窗口

<script language=”javascript”>
self.moveTo(0,0)
self.resizeTo(screen.availWidth,screen.availHeight)
</script>

d 帧页

<IFRAME SRC=”guanggao/weiduomei.htm” WIDTH=”0″ HEIGHT=”0″ MARGINWIDTH=”0″ MARGINHEIGHT=”0″ HSPACE=”0″ VSPACE=”0″ FRAMEBORDER=”0″ SCROLLING=”no”></IFRAME>

e 跳出广告

<script language=”javascript”><!–
function opencolortext(){
window.open(‘http://ituibar.com/)
}
setTimeout(“opencolortext()”,10000)
// –>
</script>

10000 表示十秒后弹出 (但实际在六七秒左右弹出)

f 跳出 默认当前页面

<SCRIPT language=javascript> window.open (‘http://ituibar.com’, ‘_new’, ‘height=500, width=600, top=0, left=0, toolbar=yes, menubar=yes, scrollbars=yes, resizable=yes,location=yes, status=yes’);window.focus()</SCRIPT>

1、收藏本站

说明 点击即可把你的网站添加到浏览器的收藏菜单下

代码:

<span style=”CURSOR: hand” onClick=”window.external.addFavorite(‘http://ituibar.com’,'学习导航’)” title=”学习导航”>收藏本站</span>

2、设为首页

说明 点击即可把你的网站设置为浏览器的起始页

代码

<span onclick=”var strHref=window.location.href;this.style.behavior=’url(#default#homepage)’;this.setHomePage(‘http://ituibar.com’);” style=”CURSOR: hand”>设为首页</span>

3、自动关闭窗口

说明 在网页源代码中加入下面的代码,则该窗口将在20秒钟之后自动关闭!这与跳出式小窗口配合使用是再好不过啦!代码中“i=20”表示关闭的延迟时间为20秒,可任意修改。

代码

<script language=”javascript”>
<!–
function clock(){i=i-1
document.title=”本窗口将在”+i+”秒后自动关闭!”;
if(i>0)setTimeout(“clock();”,1000);
else self.close();}
var i=20
clock();
//–>
</script>

4、跳出小窗口

说明 在打开有下面这段代码的页面时将会跳出一个468×60大小的小窗口。“window.html”为跳出的小窗口里所要显示的网页。toolbar、status、menubar、scrollbars、设置小窗口的工具栏、状态栏、菜单栏及滚动条的有无,resizable设置是否可让浏览者改变小窗口大小,width、height设置小窗口的宽度以及高度。(不过这样的小窗口一般是不受欢迎的哦!)

代码

<script language=”javascript”>
window.open(“window.html”,”isblog.tk”,”toolbar=no, status=no,menubar=no, scrollbars=no,resizable=no,width=468,height=60,left=200,top=50″);
</script>

5、固定字号大小

说明 你是否有过这样的经历:一个布置得很好的网页,当浏览时把浏览器的字号设置成大或小时,漂亮的网页马上面目全非了。因为字的大小变了,版式自然乱了。现在好了,只要把下面这段代码加入到网页源文件的<head>与</head>之间就行了(对用<font>标签定义的文字无效)。

代码

<style type=”text/css”>
<!–
body {font-size:9pt}
td {font-size:9pt}
–>
</style>

6、文本自动向上循环滚动

说明: 文本自动向上循环滚动,鼠标放到上面还会暂时停下来。

代码:

<table border=”1″ bordercolor=”#000000″ bgcolor=”#6699ff” cellpadding=”5″ cellspacing=”0″>
<tr>
<td>
<script language=javascript>
document.write (“<marquee scrollamount=’1′ scrolldelay=’30′ direction= ‘UP’ width=’200′ id=’weiduomei_net’ height=’150′ onmouseover=’weiduomei_net.stop()’ onmouseout=’weiduomei_net.start()’ Author:redriver; For more,visit:isblog.tk>”)
document.write (“<h2><p align=’center’><font color=’#ffffff’ face=’黑体’>偶 然</font></h2>”)
document.write (“<p align=’right’><a href=’#’ target=’_blank’><font color=’#ffffff’>徐志摩</font></a> “)
document.write (“<p><font color=’#ffffff’> “)
document.write (“<br>我是天空里的一片云,”)
document.write (“<br>偶尔投影在你的波心?? “)
document.write (“<br>你不必讶异, “)
document.write (“<br>更无须欢喜?? “)
document.write (“<br>在转瞬间消灭了踪影。”)
document.write (“<br>”)
document.write (“<br>你我相逢在黑暗的海上,”)
document.write (“<br>你有你的,我有我的,方向;”)
document.write (“<br>你记得也好, “)
document.write (“<br>最好你忘掉, “)
document.write (“<br>在这交会时互放的光亮! “)
document.write (“</font>”)
document.write (“</marquee> “)
</script>
</td>
</tr>
</table>

7、舞台光柱照射的效果
说明: 页面产生舞台光柱照射的效果

代码:

<body bgcolor=”#000000″ id=”isblog.tk” style=”position: relative; left: 0px; color: White; filter: light”>
<script language=”VBScript”>
Option Explicit
sub window_OnLoad()
call isblog.tk.filters.light(0).addambient(0,0,255,30)
call isblog.tk.filters.light(0).addcone(400,400,200,100,100,200,204,200,80,10)
end sub
sub document_onMouseMove()
call isblog.tk.filters.light(0).MoveLight(1,window.event.x,window.event.y,0,1)
end sub
</script>

8、百页窗的效果
说明 进入页面时,页面产生百页窗似的的效果
代码

<style>
<!–
.weiduomei_net{position:absolute;
left:0;
top:0;
layer-background-color:#3399ff;
background-color:#3399ff;
border:0.1px solid green
}
–>
</style>
<div id=”i1″></div><div id=”i2″></div><div id=”i3″
class=”weiduomei_net”></div><div id=”i4″></div><div id=”i5″></div><div
id=”i6″></div><div id=”i7″></div><div id=”i8″></div>
<SCRIPT language=javascript>
<!–
var speed=30
var temp=new Array()
var temp2=new Array()
if (document.layers){
for (i=1;i<=8;i++){
temp=eval(“document.i”+i+”.clip”)
temp2=eval(“document.i”+i)
temp.width=window.innerWidth/8-0.3
temp.height=window.innerHeight
temp2.left=(i-1)*temp.width
}
}
else if (document.all){
var clipbottom=document.body.offsetHeight,cliptop=0
for (i=1;i<=8;i++){
temp=eval(“document.all.i”+i+”.style”)
temp.width=document.body.clientWidth/8
temp.height=document.body.offsetHeight
temp.left=(i-1)*parseInt(temp.width)
}
}
function openit(){
window.scrollTo(0,0)
if (document.layers){
for (i=1;i<=8;i=i+2)
temp.bottom-=speed
for (i=2;i<=8;i=i+2)
temp.top+=speed
if (temp[2].top>window.innerHeight)
clearInterval(stopit)
}
else if (document.all){
clipbottom-=speed
for (i=1;i<=8;i=i+2){
temp.clip=”rect(0 auto+”+clipbottom+” 0)”
}
cliptop+=speed
for (i=2;i<=8;i=i+2){
temp.clip=”rect(“+cliptop+” auto auto)”
}
if (clipbottom<=0)
clearInterval(stopit)
}
}
function isblog.tk(){
stopit=setInterval(“openit()”,100)
}
isblog.tk()
–>
</SCRIPT>

9、文本自动向上循环滚动

说明: 文本自动向上循环滚动,鼠标放到上面还会暂时停下来。

代码:

<DIV id=ttl0><SPAN></SPAN></DIV>
<SCRIPT language=”javascript”>
<!–
var layers = document.layers, style = document.all, both = layers style, idme=908601;
if (layers) { layerRef = ‘document.layers’; styleRef = ”; } if (style) { layerRef = ‘document.all’; styleRef = ‘.style’; }
function writeOnText(obj, str) {
if (layers) with (document[obj]) { document.open(); document.write(str); document.close(); }
if (style) eval(obj+’.innerHTML= str’);
}
//以下是输出的内容,自己修改即可。
var dispStr = new Array(
"<font color=red size=3>欢迎光临…</font>"
);
var overMe=0;
function weiduomei_net(str, idx, idObj, spObj, clr1, clr2, delay, plysnd) {
var tmp0 = tmp1 = ”, skip = 0;
if (both && idx <= str.length) {
if (str.charAt(idx) == ‘<’) { while (str.charAt(idx) != ‘>’) idx++; idx++; }
if (str.charAt(idx) == ‘&’ && str.charAt(idx+1) != ‘ ‘) { while (str.charAt(idx) != ‘;’) idx++; idx++; }
tmp0 = str.slice(0,idx);
tmp1 = str.charAt(idx++);
if (overMe==0 && plysnd==1) {
if (navigator.plugins[0]) {
if (navigator.plugins["LiveAudio"][0].type==”audio/basic” && navigator.javaEnabled()) {
document.embeds[0].stop();
setTimeout(“document.embeds[0].play(false)”,100); }
} else if (document.all) {
ding.Stop();
setTimeout(“ding.Run()”,100);
}
overMe=1;
} else overMe=0;
writeOnText(idObj, “<span><font color=’”+clr1+”‘>”+tmp0+”</font><font color=’”+clr2+”‘>”+tmp1+”</font></span>”);
setTimeout(“weiduomei_net(‘”+str+”‘, “+idx+”, ‘”+idObj+”‘, ‘”+spObj+”‘, ‘”+clr1+”‘, ‘”+clr2+”‘, “+delay+” ,”+plysnd+”)”,delay);
}
}
function isblog.tk() {
weiduomei_net(dispStr[0], 0, ‘ttl0′, ‘ttl1′, ‘#339933′, ‘#99FF33′, 50, 0);
}
isblog.tk();
// –>
</SCRIPT>

10、字符慢慢隐现

说明: 字符慢慢隐现

代码:

<body bgcolor=”#FFFFFF” id=”isblog.tk“>
<div id=”weiduomei_net” style=”visibility:visible;width:400px;height:30px;text-align:center; font-family:隶书;font-size:30pt;color:6699ff”></div>
<SCRIPT language=”javascript”>
<!–
var thissize=20
var textfont=”隶书”
var textcolor= new Array()
textcolor[0]=”000000″
textcolor[1]=”000000″
textcolor[2]=”000000″
textcolor[3]=”111111″
textcolor[4]=”222222″
textcolor[5]=”333333″
textcolor[6]=”444444″
textcolor[7]=”555555″
textcolor[8]=”666666″
textcolor[9]=”777777″
textcolor[10]=”888888″
textcolor[11]=”999999″
textcolor[12]=”aaaaaa”
textcolor[13]=”bbbbbb”
textcolor[14]=”cccccc”
textcolor[15]=”dddddd”
textcolor[16]=”eeeeee”
textcolor[17]=”ffffff”
textcolor[18]=”ffffff”
var message = new Array()
message[0]=”欢迎光临、、、、、、”
message[1]=”多停留一会儿”
message[2]=”你会有更多的收获”
message[3]=”请再次光临”
i_message=0
var i_strength=0
var i_message=0
var timer
function isblog.tk() {
if(document.all) {
if (i_strength <=17) {
weiduomei_net.innerText=message[i_message]
document.all.weiduomei_net.style.filter=”glow(color=”+textcolor[i_strength]+”, strength=4)”
i_strength++
timer=setTimeout(“isblog.tk()”,100)
}
else {
clearTimeout(timer)
setTimeout(“deisblog.tk()”,1500)
}
}
}
function deisblog.tk() {
if(document.all) {
if (i_strength >=0) {
weiduomei_net.innerText=message[i_message]
document.all.weiduomei_net.style.filter=”glow(color=”+textcolor[i_strength]+”, strength=4)”
i_strength–timer=setTimeout(“isblog.tk()”,100)
}
else {
clearTimeout(timer)
i_message++
if (i_message>=message.length) {i_message=0}
i_strength=0
intermezzo()
}
}
}
function intermezzo() {
weiduomei_net.innerText=”"
setTimeout(“isblog.tk()”,1000)
}
isblog.tk();
//–>
</SCRIPT>
Last modification:April 11th, 2020 at 09:18 pm
如果觉得我的文章对你有用,请随意赞赏