4

http://detectmobilebrowsers.com/のjavascriptバージョンを使用して、モバイルサイトにリダイレクトしています。唯一のことは、ユーザーがそこに行きたい/必要があるという偶然の機会に、私が完全なサイトに行くためのリンクを持っているということです。

ただし、リンクをクリックしてモバイルからサイト全体を表示すると、リダイレクトが取得され、サイト全体ではなくモバイルバージョンにキックバックされます。

私はいくつかの検索をしていて、それを使用するようにそれをハックすることが可能であるかどうか疑問に思いました

window.location.href.indexOf

またはこのような性質の何か:

if(window.location.href.indexOf("mobile/index.html") > -1)
{window.location = "http://thefullsiteURL.com"}
else { function (a, b) {
if (//mobile direction stuff from detectmobilebrowsers.com
})(navigator.userAgent || navigator.vendor || window.opera,
'http://thefullsiteURL.com/mobile/index.html')};

これは私がつなぎ合わせたものであり、私のJSスキルはかなり新しいので、誰かがよりエレガントなソリューションを持っているなら、私はそれですべてです。

4

1 に答える 1

6

フルサイトリンクのクエリ文字列値と組み合わせてセッションCookieを設定します。次に、モバイル検出コードで最初にCookie値をチェックし、次にクエリ文字列をチェックし、最後にユーザーエージェントのモバイル検出をチェックします。

したがって、完全なサイトリンクは、クエリ文字列トリガーのようになります。

<a href='http://mysite.com?fullsite=true'>Link to full site</a>

そして、あなたのモバイルで検出します:

;(function(a,b) {

    if (document.cookie.indexOf('fullsite') > -1) {
        return; // skip redirect
    }
    if (location.search.indexOf('fullsite') > -1) {
        document.cookie = 'fullsite=true; path=/;'
        return; // skip redirect
    } 
    if (/mobile regex conditional goes here/) {
        window.location = b;
    }
})(navigator.userAgent || navigator.vendor || window.opera, 'http://thefullsiteURL.com/mobile/index.html')
于 2012-08-27T22:05:17.317 に答える