首頁  >  文章  >  後端開發  >  javascript彈出視窗的技術小結分享

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

小云云
小云云原創
2018-03-15 14:12:151270瀏覽

本文主要和大家分享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、最基本的彈出視窗程式碼  

 2ec7761c62b319a0d8f749487b7dc096 
  b7611806ba5d3b1e1004f4f3c5b20d24 
  db271416853c42fd247a57c1a2c29eb6

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

#之間。

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

 2ec7761c62b319a0d8f749487b7dc096 
  bc246c57ad82c9647b736d9a190aab97 
  db271416853c42fd247a57c1a2c29eb6

  
  參數解釋:   
  0df24357f4a395f29351d2fd9f7c0aaa js腳本開始;
  window.LANGUAGE="javascript"> js腳本開始;
  window.open 序列的命令;open 命令; #  'page.html' 彈出視窗的檔案名稱;
  'newwindow' 彈出視窗的名字(不是檔案名稱),非必須,可用空白''取代;
  height=100 視窗高度;
  widththth =400 視窗寬度;
  top=0 視窗距離螢幕上方的像素值;
  left=0 視窗距離螢幕左側的像素值;
  toolbar=no 是否顯示工具列,yes為顯示;
  menubar,scrollbars 表示選單列和滾動列。
  resizable=no 是否允許改變視窗大小,yes為允許;
  location=no 是否顯示地址欄,yes為允許;
  status=no 是否顯示狀態列內的資訊(通常是檔案已經開啟),yes為允許;
  db271416853c42fd247a57c1a2c29eb6 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(),函數內容就是開啟一個視窗。在調用它之前沒有任何用途。怎麼調用呢?
  方法一:cc110a74de578da962e6104bca52df40 瀏覽器讀取頁面時彈出視窗;
  方法二:61f7b9a4cb565e6aabb5aa542f3d13ea 瀏覽器離開頁面時彈出視窗;
  方法三:用一個連線呼叫:
  94a3d742e6c4dedc044bc7e7baea9052
  注意:使用的「#」就是虛連結。
  方法四:用一個按鈕呼叫:
  6d517a682efd8945bac8e5d1707c0136
 
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=n o, status=no") 
//写成一行
 
  window.open ("page2.html", "newwindow2", "height=100, 
width=100, top=1 00, left=100,toolbar=no, menubar=no, scrollbars=no, resizable=no, 
loca tion=no, status=no") 
//写成一行
 
  } 
  //--> 
  </script>


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

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

  

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


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

  

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

  然后,再用0b774bfd64a2e0c25f227b95b95c6f4b 这一句话代替page.html中原有的a64997a0904a094b4570728d7f327acd这一句就可以了。(这一句话千万不要忘记写啊!这一句的作用是调用关闭窗口的代码,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的ef1cac8df639bc9110cb13b8b5ab3dd7区:

  

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

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

相关推荐:

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中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn