在一些不正規的網站,尤其是那些掛滿廣告的下載站,經常在你點擊的下載連結之前,無論你點擊網頁的任何一處都會彈出新視窗。本文主要和大家介紹JavaScript實作點擊網頁任意位置開啟新視窗與關閉視窗的方法,涉及javascript視窗的相關操作函數與使用技巧,需要的朋友可以參考下,希望能幫助到大家。
這樣的效果,可以輕鬆用JavaScript做到,還可以特別指定點擊某一區域的p,才觸發開啟新視窗的事件。
例如下圖的效果:
在原始網頁中,指定一個p,無論使用者點擊這個p的任意區域,都會開啟新窗口,而點擊其它地方則不會。
在新視窗的網址列不可以編輯,不能被調整大小,提供一個「關閉」按鈕,關閉該視窗。
原網頁的HTML佈局如下,
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Untitled Document</title> </head> <body> <p class="testClass" style="height:100px;border:1px solid #cccccc">点击此任意一处打开广告</p> </body> </html>
#沒什麼好說的,就一個class為testClass的p。
關鍵是以下腳本。
<script type="text/javascript"> document.onclick = function(e){//设置整个网页的单击事件 e = e || window.event;//为了兼容这样写。 var target = e.target || e.srcElement;//用来点击的对象。为了兼容这样写。 if (target.className == "testClass"){//如果点击的对象,class为testClass,那么打开新窗口。 var OpenWindow=window.open("","newwindow","height=100","width=400","top=100","left=0","toolbar=false","menubar=false","scrollbars=false","resizable=false","location=false","status=false"); //在新窗口中写入如下的HTML代码。 OpenWindow.document.write("广告<br/>"); //在Javascript中,利用window.close()可以关闭当前窗口,但不能关闭当前标签页,不过由于这个窗口是我们自己新生成的,因此对于所有浏览器有效 OpenWindow.document.write("<button onclick='javascript:window.close()'>关闭!</button>"); } } </script>
從以上的腳本可以看到window.open()
這個方法參數很長。
其中:
第一個參數為空的意思,則意為新視窗的連結不是現有的網頁,新視窗的內容是透過以下的兩行Javascript產生的。如果要求新視窗的內容是已有的網頁,則填寫對應的url。
之後的參數是如下的意思,但只是對IE有效。
newwindow:彈出視窗的名字(不是檔案名稱),非必須,可用空''代替。
height=100:新視窗高度。
width=400:新視窗寬度。
top=0:新視窗距離目前視窗上方的像素值。
left=0:視窗距離目前視窗左側的像素值。
toolbar=false:是否顯示工具列,menubar,scrollbars表示選單列和捲動列。
resizable=false:是否允許改變視窗大小
location=false:是否啟用新視窗網址列
status=false:是否顯示狀態列。
相關推薦:
JavaScript實作點擊網頁任意位置開啟新視窗與關閉視窗的方法
以上是JavaScript點選網頁任意位置開啟新視窗與關閉視窗的實作程式碼的詳細內容。更多資訊請關注PHP中文網其他相關文章!