close

網路廣告真的是一塊大餅,連 Hinet 都無所不用其極的想在每個網頁中都加上廣告。之前是使用一個彈出式的視窗來顯示廣告,現在更是猛啦~直接幫使用者的網頁包在 Frameset 中,然後再切出一塊來顯示廣告。

avoid_hinet_ad_3_1

可別以為右半邊的圖片是我自己加進去的唷,那可是 Hinet 的廣告樣式啊!這樣一來的話~連同原先的彈出式廣告,現在又多了一個廣告了,且新廣告根本就已經佔據了使用者網頁約 1/7 了嘛,廣告又那些大那麼礙眼,真是氣死人了啦!

擋彈出式廣告的語法可在防止 Hinet 空間的廣告彈出防止 Hinet 空間的廣告彈出(二)中找到,現在~就要來教大家怎樣把那佔了網頁約 1/7 的廣告給隱藏起來。

在開始教之前要先說明一下此次 Hinet 新式廣告的執行原理。Hinet 現在是在網頁的開頭加上了廣告的語法

1
2
3
4
5
6
<script language = "JavaScript" SRC="http://hiad.myweb.hinet.net/new-inner.js"></script>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="zh-tw">
<head>
<meta name="Generator" content="EditPlus" />
<meta name="Author" content="男丁格爾's 脫殼玩" />

所以想用之前的方式躲是不行的,因此只能使用消極的方法-隱藏它。

因為 Hinet 它們是使用 document.write 的方式加入 Frameset 來改寫網頁的內容,因此我們只能去把廣告框架的部份給隱藏起來(雖然看不見,但它依舊存在)。

只要在網頁的開頭加上

1
2
3
4
5
6
7
8
9
10
<script type="text/javascript">
	try{
		parent.document.getElementById("MywebFrameSet").cols="*,0";
	}catch(err){}
</script>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="zh-tw">
<head>
<meta name="Generator" content="EditPlus" />
<meta name="Author" content="男丁格爾's 脫殼玩" />

這樣就能在廣告出現時就馬上隱藏起來了,但彈出式廣告的語法還是要記得加上喔!這樣一來就有個沒廣告的網頁了

avoid_hinet_ad_3_2

雖然感覺有點美中不足,但加減用吧,誰叫我們使用 Hinet 提供的免費網頁空間呢!

另外還有網友提到用 Domain 方式去轉的就不會有新的廣告出現,各位可以試試看。不過別用免費的轉址服務咧,那些服務大多也是帶有廣告的啊!

2008/07/08 Hinet 廣告程式更新

原本以為這樣改完就能相安無事了,誰知道 Hinet 廣告程式邊測試邊改,所以原本只是加入一個 Frameset 而已,現在會因瀏覽者螢幕的寬及一些條件來變更顯示的廣告圖片大小,因此又有可能會多加另外兩個 Frameset,所以如果只用之前的方法的話,現在可能還是會看到廣告

avoid_hinet_ad_3_3

現在讓我們再動手修改一下擋廣告的語法

1
2
3
4
5
6
7
8
9
10
11
12
13
<script type="text/javascript">
	try{
		var _hinet = parent.document.getElementsByTagName("frameset");
		for(var i=0;i<_hinet.length;i++){
			_hinet[i].cols="*,0";
		}
	}catch(err){}
</script>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="zh-tw">
<head>
<meta name="Generator" content="EditPlus" />
<meta name="Author" content="男丁格爾's 脫殼玩" />

嘿~只要把全部的 Frameset 都設定一次,管它有幾個 Frameset 也不用怕。這樣又能還給我們網頁一個乾淨的畫面囉!

另外有網友的網頁本身就有用到 Frameset,當有用到上面的方式的話,可能會破壞掉自己本身的網頁框架結構,所以就要指定我們要擋掉的 Frameset 是那幾個。目前知道 HinetFrameset 框架 IDMywebFrameSetMywebFrameSet_300250MywebFrameSet_120300 MywebFrameSet_1606004 個,因此只要用一開始教的方式來一一擋掉即可:

一樣是在網頁開頭加上

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<script type="text/javascript">
	try{
		parent.document.getElementById("MywebFrameSet").cols="*,0";
	}catch(err){}
	try{
		parent.document.getElementById("MywebFrameSet_300250").cols="*,0";
	}catch(err){}
	try{
		parent.document.getElementById("MywebFrameSet_120300").cols="*,0";
	}catch(err){}
	try{
		parent.document.getElementById("MywebFrameSet_160600").cols="*,0";
	}catch(err){}
</script>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="zh-tw">
<head>
<meta name="Generator" content="EditPlus" />
<meta name="Author" content="男丁格爾's 脫殼玩" />

或是判斷關鍵字 MywebFrameSet 來做過慮的動作也可以:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<script type="text/javascript">
	try{
		var _hinet = parent.document.getElementsByTagName("frameset");
		for(var i=0;i<_hinet.length;i++){
			if(_hinet[i].id.indexOf("MywebFrameSet")>=0){
				_hinet[i].cols="*,0";
			}
		}
	}catch(err){}
</script>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="zh-tw">
<head>
<meta name="Generator" content="EditPlus" />
<meta name="Author" content="男丁格爾's 脫殼玩" />

未使用語法前的畫面

avoid_hinet_ad_3_4

使用上述兩種語法後的畫面

avoid_hinet_ad_3_5

還有一點,現在 Hinet 好像要把廣告主力改為框架式的,但如果是經過轉址的話,它雖然不會在網頁中加入框架,但是會有彈出式廣告,因此除了以上的語法之外,建議如果有用轉址的網友請再加上:

1
2
3
4
5
6
7
8
9
10
11
<script type="text/javascript">
	try{
		ADPage.close();
	}catch(err){}
	CheckADPage = function(){};
</script>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html lang="zh-tw">
<head>
<meta name="Generator" content="EditPlus" />
<meta name="Author" content="男丁格爾's 脫殼玩" />

範例瀏覽:
http://abgne.myweb.hinet.net/Teacher/0012/0012_1.html (無框架)
http://abgne.myweb.hinet.net/Teacher/0012/0012_2.html (有框架)

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 Su SeenJay 的頭像
    Su SeenJay

    Su SeenJay的部落格

    Su SeenJay 發表在 痞客邦 留言(0) 人氣()