我想我已经在线浏览了50多个不同的例子,但无法找到同样的问题。
我有一个jquery移动网站和一个完整的网站(它是一个WordPress网站)。我已将以下代码放在完整站点的header.php文件中:
<script type="text/javascript">
function urlParam(name){
var results = new RegExp('[\\?&]' + 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。我使用的所有脚本都没有用(我确定这是我的错),最终我陷入了持续的重定向。
答案 0 :(得分:0)
首先,您只需要声明:if(urlParam(&#39; view&#39;)!=&#39; full&#39;){check if mobile and redirect ..}
我建议你使用document.write(urlParam(&#39; view&#39;));检查urlParam(&#39; view&#39;)实际返回的内容。这应该使您更容易调试。虽然最好的调试方法是使用chrome或firefox工具。