整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          如何用JavaScript創建彈出窗口

          擊右上方紅色按鈕關注“小鄭搞碼事”,每天都能學到知識,搞懂一個問題!

          大家好!我是/小鄭搞碼事/的小鄭

          今天和大家分享一下JS如何操作瀏覽器窗口。只講如何打開一個新窗口

          先來看效果圖

          上面這個圖界面效果就是我們要實現的。

          我們常常需要創建一個新窗口,用來向用戶顯示額外的信息,同時又避免他們正在閱讀的信息消失。從實現方案上來看,盡管我們可以用HTML打開一個新的瀏覽器窗口,但是使用JavaScript可以對新窗口的內容和特性進行更多的控制。

          接下來,我們看一下怎么實現的

          一、定義窗口打開函數

          定義一個打開新窗口的函數newWindow。如上面代碼所示,變量catWindow包含一個新的窗口對象,這個對象引用圖像文件icon.png,這個新窗口的名稱是catWin,必須設置名稱,因為我們以后可能希望在a或另一個腳本中引用這個窗口。新窗口的寬度是350像素,高度是260像素,位置是左邊400,上邊400。

          二、寫一個調用函數

          頁面中,包含一個onload事件處理程序,它調用newWinLinks函數,newWinLinks循環遍歷頁面上的a,檢查是否有任何a包含class屬性值newWin。如果有,就設置這個a元素的onclick事件處理程序,從而,當點擊這個a時,調用newWindow函數。

          總結一下

          需要注意兩個地方:

          1、newWindow中,在寬度和高度參數中的逗號之間不能有任何空格,如果有空格,那么腳本可能在某些瀏覽器中無效,總地來說,當腳本出現錯誤,需要進行高度時,要首先查找這樣的小問題。

          2、比如向窗口中添加參數時,希望窗口具有工具欄,地址欄,滾動條

          toolbar=yes,location=yes,scrollbars=yes
          

          參數默認是no,可以不填。當然瀏覽器上表現也有不同,需要知道。

          午接到博客訪客的反饋,表示博客中的鏈接在原窗口打開的話,網站的體驗非常的不好,而自己又懶的一個個去修改博客網頁中的鏈接打開方式,就加了一個強制頁面所有鏈接新窗口打開的代碼,一招解決問題。

          html頁面強制所有鏈接新窗口打開的代碼

          <base target="_blank">

          將此代碼放到,網頁中的 <head>標簽之內即可實現,當前頁面所有A鏈接新窗口打開

          html <base> 標簽

          <base>:標簽當前頁面上的所有的相對鏈接規定默認 URL 或 默認目標。

          語法:

          <base href="網址" target="打開的方式">

          屬性;

          herf:規定的默認鏈接

          target:鏈接打開的方式,參數有 _blank,_self 等,與A標簽的 target 屬性相同

          例:html頁面所有鏈接強制新窗口打開

          <base target="_blank">

          例:html頁面所有鏈接強制在當前窗口打開

          <base target="_self">

          例:設置默認的URL

          <!DOCTYPE html>
          <html lang="en">
          <head>
           <base href="https://www.feiniaomy.com" target="_blank">
           <title>Document</title>
          </head>
          <body>
           <a href="/post/1.html">我是相對鏈接,我可以打開 https://www.feiniaomy.com/post/1.html</a>
           <a href="http://www.baidu.com">我是絕對鏈接,我可以打開 http://www.baidu.com</a>
          </body>
          </html>

          <base> 標簽使用注意事項

          1、一個頁面中,<base> 標簽只能出現一次

          2、<base> 標簽只能在 <head></head>標簽中出現

          3、<base> 屬于單標簽,沒有結束標簽,類似 <img> 標簽

          單擊帶有超鏈接的文件時,超鏈接的內容有多種,打開方式,如替換當前頁打開,在新窗口打開等。而用來指定打開方式的是<a>標簽的target屬性。

          如果在一個<a>標簽內容含一個target屬性,瀏覽器將會載入和顯示用這個標簽的href屬性命名的、名稱與這個目標吻合的框架或者窗口中的文檔。如果這個指定名稱或id的框架或者窗口不存在,瀏覽器將打開一個新窗口,并給這個窗口一個指定的標記,然后將新的文檔載入那個窗口。從此以后,超鏈接文檔就可以指向這個新的窗口。

          target屬性的代碼格式如下:

          <a target="value">

          其中value有四個參數可用,這4個保留的目標名稱用作特殊的文檔重定向操作。

          (1)-blank。瀏覽器總在一個新打開、未命名的窗口中載入目標文檔。

          (2)-self。這個目標的值對所有未指定目標的<a>標簽是默認目標,使得目標文檔載入并顯示在相同的框架或者窗口中作為源文檔。這個目標是多余且不必要的,除非和文檔標題 <base>標簽中的target屬性一起使用。

          (3)-parent。這個目標使得文檔載入父窗口或者包含超鏈接引用的框架的框架集。如果這個引用是在窗口或者頂級框架中,那么它與目標-self等效。

          (4)-top。這個目標使的文檔載入包含這個超鏈接的窗口,用-tap目標將會清除所有被包含的框架并將文檔載入整個瀏覽器窗口。

          小提示:這些target的所有4個值都以下劃線開始。任何其他用一個下劃線作為開頭的窗口或者目標都會被瀏覽器忽略,因此,不要將下劃線作為文檔中定義的任何框架name或id的第一個字符。

          下面舉例說明target屬性的使用方法。

          (1)編寫代碼如下圖所示:

          (2)在瀏覽器中打開文件,預覽效果如下所示:

          (3)單擊超鏈接,在新窗口打開連接頁面,下圖所示

          (4)修改代碼并單擊鏈接。

          將“-blank”換成“-self”,即代碼修改為“<a target="_self">新浪</a>”,單擊鏈接后,直接在當前窗口打開新鏈接,如圖所示:


          主站蜘蛛池模板: 亚欧色一区W666天堂| 国产在线精品一区二区中文 | 亚洲第一区在线观看| 无码囯产精品一区二区免费 | 三级韩国一区久久二区综合 | 风间由美性色一区二区三区| 99久久综合狠狠综合久久一区| 国模无码一区二区三区| 久久精品国产一区二区| 精品黑人一区二区三区| 中文字幕日本精品一区二区三区| 国产日韩一区二区三区| 99久久精品国产高清一区二区| 国产精品乱码一区二区三| 日韩精品无码一区二区三区免费| 亚洲国产专区一区| 国产精品成人一区无码 | 久久婷婷久久一区二区三区| 亚洲日韩中文字幕无码一区| 无码一区二区三区| 亚洲熟女乱综合一区二区| 精品国产一区二区三区久久影院| 中文字幕视频一区| 无码av免费一区二区三区| 亚洲线精品一区二区三区影音先锋| 国产一区二区三区在线看片 | 亚洲综合国产一区二区三区| 在线免费视频一区| 无码国产精品一区二区免费虚拟VR| 国产精品无码一区二区在线观一| 国产一区二区三区乱码在线观看| 一本AV高清一区二区三区| 精品一区二区三区3d动漫| 亚洲一区二区三区写真| 无码人妻一区二区三区在线视频| 在线观看国产一区| 久久成人国产精品一区二区 | 亚洲国产专区一区| 国产一区韩国女主播| 狠狠综合久久av一区二区 | 日韩免费视频一区|