網購不忘學習——用javascript解決網站訪問源的分類引導

來源:互聯網
上載者:User

一到假期,購買慾就成倍加強,勞動節也不例外,昨天在網上買洗車器,不小心進入一個叫三雪的網站,發現儘管在搜尋結果中顯示的是它的主網域名稱,但點擊卻直接進了網站的一個內頁(/xicheqi),反覆幾次,依然如此,從這頁面的設計看,也算上得有幾分姿色,可是好好的主網域名稱不用,直接跳到內頁幹什嗎?於是我在地址欄修改地址,改成主網域名稱後,再訪問,發現網站是有首頁的,但,比起剛剛看到的內頁,首頁設計反而顯得簡陋至極,my god,why。

幾經尋覓,終於得到了答案:這是一個推廣洗車器的網站,首頁和內頁分工不同,內頁負責展示商品和引導購買,首頁負責SEO。這種形式在推廣網站中屢見不鮮,而我感興趣的是:為什麼在搜尋結果中開啟的首頁轉到了內頁,而在瀏覽器中開啟的首頁卻沒有跳轉?

審查元素,發現這樣一段代碼:

1 var regexp=/\.(sogou|soso|baidu|google|youdao|yahoo|bing|118114|biso|gougou|ifeng|ivc|sooule|niuhu|biso)(\.[a-z0-9\-]+){1,2}\//ig;2 var where = document.referrer;3 if(regexp.test(where))4 {5 window.location.href='http://www.threesnow.com/xicheqi/'6 }

真相大白,這是一段只針對來源於搜尋結果的連結進行頁面跳轉的JS代碼,代碼的內容也很容易理解,相似的代碼也不難寫出。但上面的代碼與各種直接跳轉的代碼不同在於需求解決的層面。一般來說,一個網站的訪問來源不外乎三種:直接存取、通過搜尋引擎、通過外鏈訪問。當一個網站需要將這三種訪問來源進行區分引導時,直接跳轉顯然不能解決問題,並且從站外到站內的訪問也沒有參數可以傳遞,所以,這種源自於推廣網站的來源分類不失為一個好的方法。

從三雪網上拷下來的代碼只是實現了直接存取和通過搜尋引擎訪問的分類,我根據直接存取時 document.referrer 值為空白的特性,又重寫一個將三種訪問來源進行分類的JS程式碼片段備用。

 1 var regexp=/\.(sogou|soso|baidu|google|youdao|yahoo|bing|118114|biso|gougou|ifeng|ivc|sooule|niuhu|biso|threesnow)(\.[a-z0-9\-]+){1,2}\//ig; 2 var where = document.referrer; 3  4 if(where == null) 5 { 6     //直接存取 7     window.location.href='http://www.cnblogs.com/' 8 } 9 else if(regexp.test(where))10 {11     //通過搜尋引擎訪問12     window.location.href='http://www.cnblogs.com/cnliu/'13 }14 else15 {16     //通過外鏈訪問17     window.location.href='http://www.cnblogs.com/cnliu/archive/2011/07/25/evaluate-15-pages-of-university.html'18 }

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.