Javascript重定向-保留路径和变量,切换域

Not*_*Jay 1 javascript mobile redirect

我正在尝试使用javascript进行移动重定向。这是我要完成的工作:

普通视图:https//secure.example.com/checkout/Checkout.aspx?a = 1&b = 2&c = 3&d = 456789

重定向到

移动视图:https : //differentdomain.com/mobile/Checkout.aspx?a=1&b=2&c=3&d=456789

        <script type="text/javascript">
            function TN_mobileUrlOverride()
                {
                    TN_mobile.DroidUrl = TN_mobile.IphoneUrl = TN_mobile.BlackBerryUrl = "https://example.com/mobile" + window.location;
                }
        </script>
        <script src="http://s3.amazonaws.com/TNService/Js/mobile.js"></script>
Run Code Online (Sandbox Code Playgroud)

当我使用window.location时,它将添加整个域,从而导致:https : //example.com/mobile/https : //differentdomain.com/mobile/Checkout.aspx?a=1&b=2&c=3&d=456789

当我使用window.location.path时,它不携带变量,仅携带文件:https : //differentdomain.com/mobile/Checkout.aspx

替换域时如何保留文件和URL参数?

谢谢!

tco*_*ooc 5

用途location.host

window.location.host = "differentdomain.com";
Run Code Online (Sandbox Code Playgroud)

假设您需要TN_mobile.DroidUrl = TN_mobile.IphoneUrl = TN_mobile.BlackBerryUrl全部等于所需的网址,请执行以下操作:

var url = new URL(window.location);
url.host = "differentdomain.com";
TN_mobile.DroidUrl = TN_mobile.IphoneUrl = TN_mobile.BlackBerryUrl = url.toString();
Run Code Online (Sandbox Code Playgroud)