2015-06-30 138 views
0

因此,我之前看到過這個問題,但沒有真正的答案(除非我錯過了它)。如何在移動網站上創建「桌面版」鏈接,而不將其重定向到移動網站

我使用這個重定向到移動網站上site.com

 if (screen.width <= 800) { 
     window.location = "/m"; 
     } 

而且簡單的HTML重定向到桌面版本上m.site.com

 <a href="../"> Desktop Version </a> 

當然的,但是,由於上面的if語句,它重定向到移動版本。

我該如何使用javascript解決此問題?

謝謝。

+0

設置一個cookie,將其標記爲手機或桌面? – TankorSmash

回答

1

本地存儲被廣泛支持,所以讓我們使用它。無需打擾餅乾。

如果我們做這樣的事情上單擊在移動網站上顯示的「桌面版」鏈接:

localStorage.setItem("forceToDesktop", "true") 
// Followed by redirect to desktop with JS 

我們修改我們的屏幕寬度檢查,包括上述值的檢查:

if (localStorage.forceToDesktop !== "true" && screen.width <= 800) { 
    // Do redirect stuff 
} 

這將顯示在移動站點如果forceToDesktop值具有被設置,並且如果屏幕寬度小於或等於800。

但是,仍然有一部分難題缺失。在選擇僅查看桌面站點後,移動用戶如何回到移動站點?

我們需要以某種方式刪除forceToDesktop值。我會做這樣的事情。

if (localStorage.forceToDesktop === "true" && screen.width <= 800) { 
    // Add a link to the page called something like "view mobile site", 
    // and have it run the below javascript function on click 
    var backToMobile = function() { 
     localStorage.removeItem("forceToDesktop"); 
     // Redirect back to the mobile version of the page, 
     // or just redirect back to this page, and let the normal 
     // mobile redirect do its thing. 
    } 
} 
相關問題