顺德设计
当前位置:网站建设 >> 网页设计教程 >> flash控制点击弹出窗口的方法

flash控制点击弹出窗口的方法

[来源:来自网络] [作者:不详] [日期:08-03-17] [热度:]

方法有很多,以下列举常见的8种方法.

1、最基本的弹出窗口代码    <SCRIPT LANGUAGE="javascript">   <!--   window.open ('page.html')   -->   </SCRIPT> 因为这是一段javascript代码,所以它们需要放在<SCRIPT LANGUAGE="javascript">标签和</script>之间。如果要在Flash文件的Action中弹出的话,则需要在关键帧或者按钮的Action中加入getURL(”JavaScript:window.open()”),如同前面介绍的全屏技书中使用到的JavaScript一样,我们后面就不在对这个进行说明了,您可以依据同样的原理来实现。<!-- 和 -->是对一些版本低的浏览器起作用,在这些老浏览器中不会将标签中的代码作为文本显示出来,我们要养成这个好习惯。window.open ('page.html') 用于控制弹出新的窗口page.html,如果page.html不与主窗口在同一路径下,前面应写明路径,绝对路径(http://)或者相对路径(../)均可。用单引号和双引号都可以,只是不要混用。在Flash的Action中则要注意引号,因为我们的getURL已经有双引号了,所以我们要使用单引号。这一段代码可以加入HTML的任意位置,<head>和</head>之间可以,<body>间</body>也可以,越前越早执行,尤其是页面代码长,又想使页面早点弹出就尽量往前放。

 

2、经过设置后的弹出窗口 接着来说一说弹出窗口的参数设置,其实只需在上面的代码中加上一些代码就可以了。这些代码,我们也可以通过Dreamweaver行为面板(Behaviors)中的Open browser window或者其它的.mxp插件直接加入。我们通过这些代码来定制这个弹出的窗口的外观,尺寸大小,弹出的位置以适应该页面的具体情况。     <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=n o, status=no') //这句要写成一行  -->   </SCRIPT> 参数解释:   <SCRIPT LANGUAGE="javascript"> 表明JavaScript脚本的开始;   window.open 弹出新窗口的命令;   'page.html' 弹出窗口的文件名;   'newwindow' 弹出窗口的名字(不是文件名),非必须,可以为空;   height=100 窗口高度;   width=400 窗口宽度;   top=0 窗口距离屏幕上方的象素值;   left=0 窗口距离屏幕左侧的象素值;   toolbar=no 是否显示工具栏,yes为显示;   menubar=no是否显示菜单栏,yes为显示; scrollbars=no是否滚动,yes为滚动;   resizable=no 是否允许改变窗口大小,yes为允许;   location=no 是否显示地址栏,yes为显示;   status=no 是否显示状态栏内的信息,yes为允许;   </SCRIPT>表明JavaScript脚本的开始结束。 

 

3、用JavaScript函数控制弹出窗口  下面是一个完整HTML页面的代码:   <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> 在这个HTML中我们使用JavaScript脚本定义了一个函数openwin(),函数的作用就是打开一个窗口。我们可以根据我们的目的通过各种不同方式来调用函数打开窗口:方式一、FlashMX中,我们可以直接在按钮或关键帧的ActionScript脚本中调用HTML页面<head></head>间的openwin()函数;方式二、设定在浏览器装载页面内容时弹出窗口,只需在HTML页面的<body>括号中加入onload="openwin()",即写成<body onload="openwin()">;   方式三、设定在浏览器离开该页面内容时弹出窗口,只需在HTML页面的<body>括号中加入onunload="openwin()",即写成<body onunload="openwin()">;   方式四、使用超级链接来调用该函数,如: <a href="#" onclick="openwin()">点击这里打开一个窗口</a> ,这里使用的“#”是一个虚链接,目的是让鼠标移到这些文字上时,鼠标会变成小手形状;  方式五:即就是使用一个按钮来调用函数打开窗口,和上面的基本差不多,不多介绍,代码为:<input type="button" onclick="openwin()" value="打开窗口"> 。 

 

4、使用JavaScript函数控制同时弹出两个窗口 这个原理是一样的只是自定义的函数稍有不同而已。我们对前面的源代码稍微改动如下:  <script LANGUAGE="JavaScript">   <!--   function openwin() {   window.open ("page1.html", "newwindow1", "height=100, width=100, top=0, left=0,toolbar=no, menubar=no, scrollbars=no, resizable=no, location=n o, status=no")   window.open ("page2.html", "newwindow2", "height=100, width=100, top=100, left=100,toolbar=no, menubar=no, scrollbars=no, resizable=no, loca tion=no, status=no")  }   //-->   </script> 改动以后,调用这个函数就能弹出page1.html和page2.html两个页面了。为避免弹出的两个窗口覆盖,我们稍微让top和left的值不同,控制一下弹出的位置使它们不相互覆盖即可 。 注意:两个窗口的名称newwindows1和newwindow2不能相同,或者干脆全部设为空也可以。  

 

5、弹出的窗口的定时关闭控制 如果您经常上网的话,您就能体会到,弹出很多的窗口是很讨人厌的。如果能够让弹出窗口经过一定的时间自动关闭就好了。下面我们就来说说怎样控制弹出的窗口的自动关闭。其实我们同样只需加入一小段代码就可以了。我们在弹出的页面的代码中加入一小段代码,(注意是加入page.html的HTML中,可不是主页面中,否则……),让它10秒后自动关闭。请看下面的操作: 首先,将如下代码加入弹出页面page.html文件的<head>标签中:   <script language="JavaScript">   function closeit()   {   setTimeout("self.close()",10000) //毫秒   }   </script>   然后,再用<body onload="closeit()"> 这一句话代替page.html中原有的<body>这一句就可以了。 

 

6、在弹出窗口中加上一个关闭按钮 其实很简单,只要在弹出窗口中加入一个按钮,在按钮上使用”window.close()”就可以了,如下:  <FORM>   <INPUT TYPE='BUTTON' VALUE='关闭' onClick='window.close()'>   </FORM> 当然,您也可以按页面右上角的关闭按钮关闭窗口的。不知道这里讲的是不是多余? 

 

7、运用Cookie控制的不重复弹出窗口 我们上网时总是遇到这样的情况,每次进入同一个页面或者刷新该页面时,弹出窗口会特别的“敬业”,每次都会弹出来。在我们上面使用的方法中就存在这个毛病,因此,当我们要在一个需要频繁经过的页面上面例如首页时,我们有必要进行一定的改动,使它能够“智能化”,只弹出一次。这样的可以让浏览者心情舒畅哦:)我们解决这个问题的途径就是使用Cookie控制了:首先,将如下的JavaScript代码加入主页面HTML的<HEAD></HEAD>标签间:   <script>   function openwin(){   window.open("page.html","","width=200,height=200")   }   function get_cookie(Name) {   var search = Name + "="   var returnvalue = "";   if (document.cookie.length > 0) {   offset = document.cookie.indexOf(search)   if (offset != -1) {   offset += search.length   end = document.cookie.indexOf(";", offset);   if (end == -1)   end = document.cookie.length;   returnvalue=unescape(document.cookie.substring(offset, end))   }   }   return returnvalue;   }    function loadpopup(){   if (get_cookie('popped')==''){   openwin()   document.cookie="popped=yes"   }   }   </script> 然后,用<body onload="loadpopup()">(注意不是openwin而是loadpop,我们这里的函数不再是openwin了,而是loadpop)替换主页面中原有的<body>标签即可。这里的代码有一点麻烦,但是您不需要理解它,只需知道怎么用它就可以了。可以试着刷新一下这个页面或者重新进入该页面,窗口再也不会弹出了,在也不会烦人了!

 

8、在FlashMX打开Chromeless windows 熟悉网页设计的人会知道现在网页中流行一种叫做Chromeless Window的窗口,如图2-3-21所示,它是一种没有菜单条和工具条的窗口,能够拖动。使用在网页上很时髦当然也很实用。图片暂缺图2-3-21 Chromeless windows 这种窗口是怎么样做出来的呢?其实它也是通过JavaScript实现的。有专门的打开Chromeless Window窗口的Dreamweaver插件,它们可以自动生成打开Chromeless Window窗口的代码。如果您看的懂一点JavaScript的话,可以自己把生成的代码考进来,再进行改动。在FlashMX中怎么样使用呢?其实和前面的一样。我们来看一下FlashMX动画所在页面中的JavaScript代码(可以用Dreaweaver插件生成): <script language="javascript" type="text/javascript" src="../js/chromeless_35.js"></script> <script language="javascript"> function openIT4FLASH(u,W,H,X,Y,n) { var cU ='img/close_up.gif' var cO ='img/close_ovr.gif' var cL ='img/clock.gif' var mU ='img/min_up.gif' var mO ='img/min_ovr.gif' var xU ='img/max_up.gif' var xO ='img/max_ovr.gif' var rU ='img/res_up.gif' var rO ='img/res_ovr.gif' var tH ='<font face=verdana size=1>Chromeless Window窗口标题</font>' var tW =' ?nbsp;window title' var wB ='#000000' var wBs ='#FFFFFF' var wBG ='#FF0000' var wBGs='#00FF00' var wNS ='toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0,resizable=0' var fSO ='scrolling=no noresize' var brd =10; var ful =false; var min =false; var res =false; var tsz =20; chromeless(u,n,W,H,X,Y,cU,cO,cL,mU,mO,xU,xO,rU,rO,tH,tW,wB,wBs,wBG,wBGs,wNS,fSO,brd,ful,min,res,tsz) } </script> 第一行是把chromeless_35.js的jsScript脚本文件包含进来,这有点C语言中#include的意思。下面的那些就是打开Chromeless Window窗口的参数定义了,具体的大家可以自己去试试,我们这里不管它们了。代码的工作搞定了,然后回到FlashMX中,对Flash的button中添加动作 on (release) { getURL("javascript:openIT4FLASH('html/content.html',400,200,null,null,'mywinname01');"); } 上面是笔者用的代码,您可以根据自己的情况进行改动,函数中第一项是要打开的页面,后面的两个数字是打开Chromeless Window窗口的长宽,其余的参数我们就不介绍了,只是用到了几个主要的参数。 好了,所有的工作就做完了,要明确的一点是,这里的Flash动画必须放在带有上面JavaScript代码的网页里,也就是说要在Flash动画所在的网页中加入代码。这样,Flash动画和脚本函数在一个页面中,Flash才可以通过Flash内的ActionScript脚本调用在HTML里先定义函数。好了,我们弹出窗口的内容就介绍完了,它和FlashMX的关系不是十分的大,但是能够给FlashMX网站带来很大的灵活性。您可以适当的采用它们运用到您的网页中去,使您的网站更有魅力……



  关于站点
| 联系站长 | 百度xml | 友情链接 | 网站地图 | 粤ICP备07500705号
                 ©2008 维克斯媒体传播 版权所有