网页javascript精华代码集

分类: 入门   出处:iocblog整理  更新时间:2008-10-06   添加到收藏  

【1、普通的弹出窗口】
其实代码非常简单:

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


  因为这是一段javascripts代码,所以它们应该放在<script language=javascript>标签和</script>之间。<!-- 和 -->是对一些版本低的浏览器起作用,在这些老浏览器中不会将标签中的代码作为文本显示出来。要养成这个好习惯啊。
 window.open ('page.html') 用于控制弹出新的窗口page.html,如果page.html不与主窗口在同一路径下,前面应写明路径,绝对路径([url]http://)[/url]和相对路径(../)均可。
  用单引号和双引号都可以,只是不要混用。
  这一段代码可以加入html的任意位置,<head>和</head>之间可以,<body>间</body>也可以,越前越早执行,尤其是页面代码长,又想使页面早点弹出就尽量往前放。

  【2、经过设置后的弹出窗口】
  下面再说一说弹出窗口的设置。只要再往上面的代码中加一点东西就可以了。我们来定制这个弹出的窗口的外观,尺寸大小,弹出的位置以适应该页面的具体情况。

<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 窗口高度;
width=400 窗口宽度;
top=0 窗口距离屏幕上方的象素值;
left=0 窗口距离屏幕左侧的象素值;
toolbar=no 是否显示工具栏,yes为显示;
menubar,scrollbars 表示菜单栏和滚动栏。
resizable=no 是否允许改变窗口大小,yes为允许;
location=no 是否显示地址栏,yes为允许;
status=no 是否显示状态栏内的信息(通常是文件已经打开),yes为允许;
</script> js脚本结束

  【3、用函数控制弹出窗口】
  下面是一个完整的代码。
<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=openwin()> 浏览器读页面时弹出窗口;
  方法二:<body onunload=openwin()> 浏览器离开页面时弹出窗口;
  方法三:用一个连接调用:
<a href=注意:使用的“ 方法四:用一个按钮调用:
<input type=button onclick=openwin() value=打开窗口>

  【4、同时弹出2个窗口】


  对源代码稍微改动一下:
<script language=javascript>
<!--
function 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)
//写成一行
}
//-->
</script>


  为避免弹出的2个窗口覆盖,用top和left控制一下弹出的位置不要相互覆盖即可。最后用上面说过的四种方法调用即可。
注意:2个窗口的name(newwindows和newwindow2)不要相同,或者干脆全部为空。ok?

  【5、主窗口打开文件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>即可。

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

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


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

function closeit() {

settimeout(self.close(),10000) //毫秒

}

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

  【7、在弹出窗口中加上一个关闭按钮】
<form>
<input type='button' value='关闭' onclick='window.close()'>
</form>
呵呵,现在更加完美了!

  【8、内包含的弹出窗口-一个页面两个窗口】

  上面的例子都包含两个窗口,一个是主窗口,另一个是弹出的小窗口。
  通过下面的例子,你可以在一个页面内完成上面的效果。

<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=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=<input type=button onclick=openwin() value=打开窗口>
</body>
</html>

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


 【9、终极应用--弹出的窗口之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))
} (www.iocblog.net 文章来源)
}
return returnvalue;
}

function loadpopup(){
if (get_cookie('popped')==''){
openwin()
documents.cookie=popped=yes
}
}

</script>

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

  写到这里弹出窗口的制作和应用技巧基本上算是完成了,俺也累坏了,一口气说了这么多,希望对正在制作网页的朋友有所帮助俺就非常欣慰了。
  需要注意的是,js脚本中的的大小写最好前后保持一致。


  1.弹启一个全屏窗口

<html>
<body onload=window.open('http://www.pconline.com.cn','example01','fullscreen');>;
<b>[url]www.e3i5.com[/url]</b>
</body>
</html>

  2.弹启一个被f11化后的窗口

<html>
<body onload=window.open(''http://www.pconline.com.cn','example02','channelmode');>;
<b>[url]www.e3i5.com[/url]</b>
</body>
</html>

  3.弹启一个带有收藏链接工具栏的窗口

<html>
<body onload=window.open('http://www.pconline.com.cn','example03','width=400,height=300,directories');>
<b>[url]www.e3i5.com[/url]</b>
</body>
</html>

  4.网页对话框

<html>
<script language=javascript>
<!--
showmodaldialog('http://www.pconline.com.cn','example04','dialogwidth:400px;dialogheight:300px;
dialogleft:200px;dialogtop:150px;center:yes;help:yes;resizable:yes;status:yes')
//-->
</script>
<b>[url]www.e3i5.com[/url]</b>
</body>
</html>

<html>
<script language=javascript>
<!--
showmodelessdialog('http://www.pconline.com.cn','example05','dialogwidth:400px;dialogheight:300px;
dialogleft:200px;dialogtop:150px;center:yes;help:yes;resizable:yes;status:yes')
//-->
</script>
<b> target=_blank>[url]http://www.pconline.com.cn[/url]</b>
</body>
</html>

  showmodaldialog()或是showmodelessdialog() 来调用网页对话框,至于showmodaldialog()与showmodelessdialog()的区别,在于showmodaldialog()打开的窗口(简称模式窗口),置在父窗口上,必须关闭才能访问父窗口(建议尽量少用,以免招人反感);showmodelessdialog()(简称无模式窗口),打开后不必关闭也可访问父窗口打开的窗口。

dialogheight: iheight 设置对话框窗口的高度。
dialogwidth: iwidth 设置对话框窗口的宽度。   
dialogleft: ixpos 设置对话框窗口相对于桌面左上角的left位置。
dialogtop: iypos 设置对话框窗口相对于桌面左上角的top位置。
center: {yes | no | 1 | 0 } 指定是否将对话框在桌面上居中,默认值是“yes”。
help: {yes | no | 1 | 0 } 指定对话框窗口中是否显示上下文敏感的帮助图标。默认值是“yes”。   
resizable: {yes | no | 1 | 0 } 指定是否对话框窗口大小可变。默认值是“no”。
status: {yes | no | 1 | 0 } 指定对话框窗口是否显示状态栏。对于非模式对话框窗口,默认值是“yes”;对于模式对话框窗口,默认值是 “no”。


网页经典代码
1. 将彻底屏蔽鼠标右键,无右键菜单
<body oncontextmenu=window.event.returnvalue=false>

也可以用于网页中table框架中
<table border oncontextmenu=return(false)><td>no</table>


2.取消选取、防止复制
<body onselectstart=return false>


3.不准粘贴
<body onpaste=return false>


4.防止复制
<body oncopy=return false; oncut=return false;>


5.ie地址栏前换成自己的图标
<link rel=shortcut icon href=favicon.ico>

说明:关于favicon.ico文件的制作。你可以先在fw中做一个图片,属于你自己站点一个小图标。然后在acd see将文件属性改为*.ico,然后将你做的*.ico文件传到你的服务器目录中,然后就可以使用以上代码来实现,当别人登陆你的站点时,地址栏里使用的就是你自定义的图标了。


6.可以在收藏夹中显示出你的图标
<link rel=bookmark href=favicon.ico>

说明:制作方法和上面的一样。只是显示的方式不同,这个是在别人收藏你的网页地址时显示的个性图标。


7.关闭输入法
<input style=ime-mode:disabled>

说明:这段代码是在表格提交时用到的。也就是在输入数据时不可以使用其他输入法模式。


8.永远都会带着框架
<script language=javascript><!--
 if (window == top)top.location.href = frames.htm;// --></script>

说明:frames.htm为你的网页,这也是保护页面的一种方法(www.iocblog.net 文章来源)


9.防止被人frame
<script language=javascript><!--
 if (top.location != self.location)top.location=self.location;
// --></script>


10.网页将不能被另存为
<noscript><iframe src=*.html></iframe></noscript>
说明:<noscirpt>的用法很广,其中一条就是可以使js广告失效。


11.查源文件
<input type=button value=查看网页源代码
onclick=window.location = 'view-source:'+ target=_blank>[url]http://bbs.055.cn/test.htm[/url]';>


12.cookie脚本记录,有很大的用处哦

function get_cookie(name) {
var search = name + =

var returnvalue = ;

if (documents.cookie.length > 0) {

offset = documents.cookie.indexof(search)

if (offset != -1) { // if cookie exists

offset += search.length

// set index of beginning of value

end = documents.cookie.indexof(;, offset);

// set index of end of cookie value

if (end == -1)

end = documents.cookie.length;

returnvalue=unescape(documents.cookie.substring(offset, end))

}

}

return returnvalue;

}


function loadpopup(){

if (get_cookie('popped')==''){

openpopup()

documents.cookie=popped=yes

}

}

说明:以上是js代码,请自己加起始符和结束符

[1] [2] 下一页



文章整理:iocblog
版权申明:本站文章均来自网络,如有侵权,请联系我们,我们收到后立即删除,谢谢!
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。