javascript弹出窗口代码

恍然大悟意思2022-07-13  12

其实制作这样的页面非常容易,只需要在页面的HTML中添加几段Javascript代码就可以了。下面我带你分析一下它的奥秘。

[1、最基本的弹出窗口代码]

其实代码很简单:

lt;脚本语言= " javascript " gt

lt;!-

window . open(' page . html ')

- gt;

lt;/SCRIPT gt;

因为这是一段javascripts代码,所以应该把它们放在:它适用于一些较低版本的浏览器,在这些浏览器中,标签中的代码不会显示为文本。来养成这个好习惯?

window.open ('page.html ')用于控制新窗口page.html的弹出。如果page.html与主窗口不在同一个路径中,那么路径应该写在它的前面。绝对路径(http://)或相对路径(../)是可以接受的。

可以用单引号和双引号,不要混用就好。

这段代码可以添加到HTML中的任何地方,< head gt和

[2。设置后弹出窗口]

先说弹窗的设置。在上面的代码中添加一些东西就可以了。让我们自定义这个弹出窗口的外观、大小和弹出位置,以适合这个页面的具体情况。

lt;脚本语言= " javascript " gt

lt;!-

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')

//写成一行

- gt;

lt;/SCRIPT gt;

参数说明:

lt;脚本语言= " javascript " gtJs脚本启动;

window.open命令弹出一个新窗口;

弹出窗口“page.html”的文件名;

' new window '弹出窗口的名称(不是文件名),可选,可以替换为空' ';

height=100窗口高度;

width=400窗宽;

top=0窗口距屏幕顶部的像素值;

left=0窗口距屏幕左侧的像素值;

toolbar=no是否显示工具栏,yes显示;

menubar,scrollbars是指菜单栏和滚动条。

resizable=no是否允许改变窗口大小,yes是允许的;

location=no是否显示地址栏,yes允许;

status=no是否显示状态栏中的信息(通常文件已经打开),yes是允许的;

lt;/SCRIPT gt;js脚本结束

[3。使用函数控制弹出窗口]

这里是完整的代码。

lt;html gt

lt;head gt

lt;脚本语言= " JavaScript " gt

lt;!-

函数openwin() {

window.open ("page.html "," newwindow "," height=100,width=400,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=no")

//写成一行

}

//- gt;

lt;/script gt;

lt;/head gt;

lt;body onload = " open win()" gt;

...任意页面内容...

lt;/body gt;

lt;/html gt;

这里定义了一个函数openwin()。该功能的内容是打开一个窗口。在被调用之前,它没有任何用处。

怎么叫?

方法1:< body onload = " open win()" gt;浏览器读取页面时弹出窗口;

方法2:< body onunload = " open win()" gt;浏览器离开页面时弹出窗口;

方法三:用连接调用:

lt;a href = " # " onclick = " open win()" gt;打开窗户

注意:使用的“#”是虚拟连接。

方法四:用按钮调用:

lt;type = " button " onclick = " open win()" value = " open window " >:

[4。两个窗口同时弹出]

对源代码稍作改动:

lt;脚本语言= " JavaScript " gt

lt;!-

函数openwin() {

window.open ("page.html "," newwindow "," height=100,width=100,top=0,left=0,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=no")

//写成一行

window.open ("page2.html "," newwindow2 "," height=100,width=100,top=100,left=100,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=no")

//写成一行

}

//- gt;

lt;/script gt;

为了避免两个弹出窗口重叠,请使用top和left来控制弹出窗口的位置,使它们不会相互重叠。最后用上面说的四种方法调用。

注意:两个窗口(newwindows和newwindow2)的名称不能相同,或者都应该是空。好吗?

[5。主窗口打开文件1.htm,同时弹出小窗口page.html]

将以下代码添加到主窗口中

lt;脚本语言= " javascript " gt

lt;!-

函数openwin() {

window.open("page.html "," width=200,height=200")

}

//- gt;

lt;/script gt;

加入< body >地区:

lt;a href = " 1 . htm " onclick = " open win()" gt;打开 lt/a gt;去做吧。

[6。弹出窗口定时关闭控制]

接下来我们来控制弹出窗口,效果会更好。如果我们向弹出页面添加一小段代码(注意,它是添加到page.html的HTML中,而不是主页中,否则...),让它10秒后自动关闭不是更酷吗?

首先,将下面的代码添加到< head gt地区:

lt;脚本语言= " JavaScript " gt

function closeit() {

SetTimeout ("self.close()",10000)//ms

}

lt;/script gt;

然后,使用< body onload = " close it()" gt;这句话取代了page.html的原文

[7。在弹出窗口中添加关闭按钮]

lt;表单 gt

lt;type = ' button ' value = ' close ' onclick = ' window . close()' >:

lt;/FORM gt;

呵呵,现在更完美了!

[8。包含在带有两个窗口的一页中的弹出窗口]

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

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

lt;html gt

lt;head gt

lt;脚本语言= " JavaScript " gt

函数openwin()

{

OpenWindow=window.open("," newwin "," height=250,width=250,toolbar=no,scrollbars="+scroll+",menubar = no ");

//写成一行

open window . document . write(" lt;TITLE gt例子

open window . document . write(" lt;BODY BGCOLOR = # ffffff gt)

open window . document . write(" lt;h1 gt你好! lt/h1 >;")

OpenWindow.document.write("新窗口打开了!")

open window . document . write(" lt;/BODY >)

open window . document . write(" lt;/HTML >)

open window . document . close()

}

lt;/SCRIPT gt;

lt;/head gt;

lt;body gt

lt;a href = " # " onclick = " open win()" gt;打开窗户

lt;type = " button " onclick = " open win()" value = " open window " >:

lt;/body gt;

lt;/html gt;

看看OpenWindow.document.write()里的代码。不是标准的HTML吗?按照格式多写几行就行了。注意多一个标签或者少一个标签都会出错。记得以OpenWindow.document.close()结尾?

[9、弹出窗口的终极应用——Cookie控制]

回想一下,上面的弹窗虽然很酷,但是有一点小缺陷(沉浸在喜悦中的你一定没发现吧?)比如你把上面的脚本放在一个需要经常访问的页面上(比如首页),那么你每刷新一次这个页面,窗口就会弹出一次。是不是很烦?:-(

有解决办法吗?是啊!;-)跟我来。

我们可以用cookie来控制。

首先,将下面的代码添加到< HEAD gt地区:

lt;脚本 gt

函数openwin(){

window.open("page.html "," width=200,height=200")

}

函数get_cookie(Name) {

var search = Name + "="

var return value = " ";

if(document . cookie . length gt;0) {

offset = document . cookie . index of(search)

if (offset!= -1) {

offset+= search . length

end = document . cookie . index of(";",偏移);

if (end == -1)

end = document . cookie . length;

return value = unescape(document . cookie . substring(offset,end))

}

}

return返回值;

}

函数loadpopup(){

if(get _ cookie(' popped ')= = ' '){

openwin()

document . cookie = " popped = yes "

}

}

lt;/script gt;

然后,使用< body onload = " load popup()" gt;(注意不是openwin而是loadpop!)替换原来的

需要注意的是,JS脚本中的大小写要一致。

转载请注明原文地址:https://juke.outofmemory.cn/read/712967.html

最新回复(0)