0

我想我已经在网上查看了 50 多个不同的示例,但找不到相同的问题。

我有一个 jquery 移动网站和一个完整的网站(它是一个 WordPress 网站)。我已将以下代码放入完整站点的 header.php 文件中:

    <script type="text/javascript">
    function urlParam(name){
                var results = new RegExp('[\\?&amp;]' + name + '=([^amp;#]*)').exec(window.location.href);
                if(results)
                    return results[1] || 0;
                else
                    return '';
            }

            if(urlParam('view') == 'full'){ 
            }
            if(urlParam('view') == ''){
                // <![CDATA[
                var mobile = (/iphone|ipad|ipod|android|blackberry|mini|windows\sce|palm/i.test(navigator.userAgent.toLowerCase()));  
                if (mobile) { 
                        document.location = "http://mysite.com/mobile/index.html";  
                }  
                // ]]>
            }
    </script>

这很好用,当我在我的 iphone 上加载整个网站时,它会重定向到移动版本。

但是,我的移动网站上有一个指向完整网站的链接,如下所示:

    <li><a href="http://albariancoins.com/?view=full" rel="external" data-ajax="false">Full Site</a></li>

当我单击此链接时,它确实会将我带到完整站点,但如果我单击完整站点上的任何链接,我会被重定向回移动站点。

仅供参考,我已经尝试(但失败)设置 cookie。我使用的所有脚本都没有工作(我确定这是我的错),我最终陷入了连续重定向。

4

1 回答 1

0

首先,您只需要以下语句: if(urlParam('view') != 'full'){ check if mobile and redirect.. }

我建议你使用 document.write(urlParam('view')); 检查 urlParam('view') 实际返回的内容。这应该使您更容易调试。虽然最好的调试方法是使用 chrome 或 firefox 工具。

于 2013-05-14T21:20:12.257 回答