javascript彈出視窗的技術小結分享

小云云
發布: 2023-03-21 14:16:01
原創
1236 人瀏覽過

本文主要和大家分享javascript彈出視窗的技術小結,以下列出一些彈出視窗的參數,你可自行設定,參數之間用逗號分隔可選。字串--列出物件表並用逗號分開。每一項都有自己的值,他們將被分開(如:"fullscreen=yes, toolbar=yes")。下面是被支援的各種特性。

##指定是否在視窗中顯示功能表列預設為yesresizable = { yes | no | 1 | 0 }指定是否在視窗中顯示可供使用者調整大小的句柄預設為yesscrollbars = { yes | no | 1 | 0 }status = { yes | no | 1 | 0 }titlebar = { yes | no | 1 | 0 }toolbar = { yes | no | 1 | 0 }width = number#top = number

1、最基本的彈出視窗程式碼  

 <SCRIPT LANGUAGE="javascript"> 
  <!-- 
  window.open (&#39;page.html&#39;) 
  --> 
  </SCRIPT>
登入後複製

  
  因為這是一段javascripts程式碼,所以它們應該放在

#之間。

是對某些版本低的瀏覽器起作用,在這些舊瀏覽器中不會將標籤中的程式碼顯示為文字。要養成這個好習慣。 window.open ('page.html') 用於控制彈出新的視窗page.html,如果page.html不與主視窗在同一路徑下,前面應寫明路徑,絕對路徑(http://)和相對路徑(../)均可。用單引號和雙引號都可以,但不要混用。這一段程式碼可以加入HTML的任意位置,和之間可以,間也可以,越前越早執行,尤其是頁面代碼長,又想使頁面早點彈出就盡量往前放。
 
2、經過設定後的彈出視窗
  
  下面再說一說彈出視窗的設定。只要再往上面的程式碼加一點東西就可以了。我們來定制這個彈出的視窗的外觀,尺寸大小,彈出的位置以適應該頁面的具體情況。

 <SCRIPT LANGUAGE="javascript"> 
  <!-- 
  window.open (&#39;page.html&#39;, &#39;newwindow&#39;, &#39;height=100, width=400, top=0, left=0, 
toolbar=no, menubar=no, scrollbars=no, resizable=no,location=n o, status=no&#39;) 
//这句要写成一行
  --> 
  </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(),函數內容就是開啟一個視窗。在調用它之前沒有任何用途。怎麼調用呢?
  方法一: 瀏覽器讀取頁面時彈出視窗;
  方法二: 瀏覽器離開頁面時彈出視窗;
  方法三:用一個連線呼叫:
  
  注意:使用的「#」就是虛連結。
  方法四:用一個按鈕呼叫:
  
 
4、同時彈出2個視窗
  
   對原始碼稍微改變一下:   

  


  為避免彈出的2個視窗覆蓋,用top和left控制一下彈出的位置不要互相覆蓋即可。最後用上面說的四種方法呼叫即可。

   注意:2個視窗的name(newwindows和newwindow2)不要相同,或乾脆全部為空。
5、主視窗開啟檔案1.htm,同時彈出小視窗page.html  如下程式碼加入主視窗區:

  


  加入區:
  
open 即可。
6、彈出的視窗之定時關閉控制
  
  下面我們再對彈出的視窗進行一些控制,效果就更好了。如果我們再將一小段 程式碼加入彈出的頁面(注意是加入page.html的HTML中,不是主頁面中),讓它10秒後自動關閉是不是更酷了?
首先,將如下程式碼加入page.html檔案的區:

  

#
<script language="JavaScript"> 
  function closeit() 
  { 
  setTimeout("self.close()",10000)  
//毫秒
 
  } 
  </script>
登入後複製

  然后,再用 这一句话代替page.html中原有的这一句就可以了。(这一句话千万不要忘记写啊!这一句的作用是调用关闭窗口的代码,10秒钟后就自行关闭该窗口。)
7、在弹出窗口中加上一个关闭按钮

  

<FORM> 
  <INPUT TYPE=&#39;BUTTON&#39; VALUE=&#39;关闭&#39; onClick=&#39;window.close()&#39;> 
  </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=#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()结束啊。
9、终极应用--弹出的窗口之Cookie控制
  回想一下,上面的弹出窗口虽然酷,但是有一点小毛病,比如你将上面的脚本放在一个需要频繁经过的页面里(例如首页),那么每次刷新这个页面,窗口都会弹出一次,我们使用cookie来控制一下就可以了。
  首先,将如下代码加入主页面HTML的区:

  

<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(&#39;popped&#39;)==&#39;&#39;){ 
  openwin() 
  document.cookie="popped=yes" 
  } 
  } 
  </script>
登入後複製

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

相关推荐:

jQuery实现简单的弹出窗口实例

JS弹出窗口的运用与技巧大全

jQuery实现的模拟弹出窗口功能示例

channelmode = { yes | no | 1 | 0 } 是否在視窗中顯示階梯模式 預設為no
directories = { yes | no | 1 | 0 } 是否在視窗中顯示各種按鈕 預設為yes
#fullscreen = { yes | no | 1 | 0 } 是否用全螢幕方式顯示瀏覽器 預設為no
height = number 指定視窗的高度,單位是像素 最小值是100
left = number 指定視窗與左邊框的距離,單位是像素 值必須大於或等於0
#location = { yes | no | 1 | 0 } 指定是否在視窗中顯示網址列 預設為yes
menubar = { yes | no | 1 | 0 }
##指定是否在視窗中顯示橫向或縱向捲軸 預設為yes
指定是否在視窗中顯示狀態欄 預設為yes
指定是否在視窗中顯示標題列。在非呼叫HTML Application或一個對話方塊的情況下,這項將被忽略 預設為yes
指定是否在視窗中顯示工具列,包含如前進、後退、停止等按鈕 #預設為yes
指定視窗的寬度,單位是像素 最小值是100
指定視窗頂部的位置,單位是像素 值必須大於或等於0

以上是javascript彈出視窗的技術小結分享的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!