搜索是用blogspot.com,然後尾綴對應區域變更,如台灣就是blogspot.tw,下述的js代碼溝想,是可以非blogspot.tw,則自動轉blogspot.tw,不過網頁,會跑2次
此問題,其實租個域名綁定,就可以解決,只是對,久久才PO文章的人來說,很浪費,也不會想去租域名
雖然zfly9已撤掉下述代碼;原本打算刪除此貼,但下述代碼,還是有許多地方可取,可參考,於是就留下來了
注意一下,無法在有google ads廣告的blogsopt站使用,不然會造成網頁執行2次,出現無效流量,目前本站已經撤掉,下述的自動轉址代碼
補充說明 2018年7月左右吧 blogspot 取消自動轉址,又改回 blogspot.com 了,太好了,不需要用下面代碼轉址了
<script type='text/javascript'>
try{ var g1url=location.href; }catch(e){ var g1url=window.location.toString(); }
var g2url=g1url.toLowerCase();
if(g2url.indexOf('.blogspot.')>0){
if(g2url.indexOf('.blogspot.tw')==-1){
var g3url = g2url.replace(/\.blogspot\.[a-z.]{2,5}/gi,'.blogspot.tw');
try{ document.location.href=g3url; }catch(e){ window.location=g3url; }
}
}
</script>
2015年9月29日,更新代碼,indexOf大小寫判斷較為嚴格,加入轉小寫部份
2015年10月4日,外圍在加一層.blogspot.判斷,避免編輯時,一直在轉跳
javascript 之 try 及 catch 用途解說
1、用來跑新指令,或不確定瀏覽器有無支援該函數,當try裡面出錯時,則跑catch內的東西
2、主要的功能是,當程式出錯時,還能繼續向下執行,而會不中斷,如在用ajax,獲取不到ajax回傳值時,就可以用try及catch處理
javascript 之獲得獲取url網址值,有2個方式
1、用location.href指令,如var g2url=location.href;,將網址內容放到g2url
2、用window.location.toString()指令,如var g2url=window.location.toString();,將網址內容放到g2url
try{ var g2url=location.href; }catch(e){ var g2url=window.location.toString(); }
當try裡面的方案出錯,抓不到網址時,就執行catch內的方案
javascript 用 indexOf 比對網址解說
indexOf 的用途,是查找字串,出現在第幾位,如
<script type='text/javascript'>
var str = "abcdefghijklmnopqrstuvwxyz";
var n = str.indexOf("f"); //n的值會是5
document.write(n);
</script>
比較重要的一點,就是找不到或不存在時,是回傳-1
if(g2url.indexOf('.blogspot.tw')==-1){
當找不到指定的字串時,則執行裡面的東西
}
javascript 用 replace 替換取代網址解說
g2url.replace(/\.blogspot\.[a-z.]{2,5}/gi,'.blogspot.tw');
正則 ●●● 額,一直是讓人頭痛的東西,比較好理解的方式,就是看成一個字一個字,由左至右的比對,符合所設置的規則時,就進行替換
\. 點是正則符號,前面要加反斜線,讓它還原成,普通的點
[a-z.] 意思是英文a到z,外加一個.
{2,5} 意思是比對2個到5個的值
g是全局比對,i是不分大小寫
<script type='text/javascript'>
//測試用代碼
var g2url='http://zfly9.blogspot.co.uk';
if(g2url.indexOf('.blogspot.tw')==-1){
var g3url = g2url.replace(/\.blogspot\.[a-z.]{2,5}/gi,'.blogspot.tw');
}
document.write(g3url);
</script>
javascript 的轉址方式有二種
1、document.location.href,將網址值丟到裡面,就會轉向該網址
2、window.location,將網址值丟到裡面,就會轉向該網址
try{ document.location.href=g3url; }catch(e){ window.location=g3url; }
當try裡面的方案出錯,無法轉網時,就執行catch內的方案
對上述圖文教學,還不太明白的話,請至下方連結,查看 youtube 視頻解說
視頻解說之第一部分 https://www.youtube.com/watch?v=AZqbJyJ50z4
謝謝大家,抽空觀看,files備份檔名 javascriptguides003
沒有留言:
張貼留言
由於經常被灌水,所以您再發表留言之後,需要耐心的等待博客主之審核,於審核過後才會公開您的留言,因此請您不要重複的留言,謝謝您的留言。
Hello my friend, I have no money, I am very poor, My blog is super chill, I welcome your comments, but in order to maintain a healthy discussion, please avoid spam or irrelevant comments.