我设计了一个网页和同一页面的移动版本(使用jQuery Mobile)。
我有javascript代码,用于检测用户是否使用移动设备,然后重定向到移动网站(mobile.html)。
但是,当用户试图从移动网站转到桌面或整个网站时,它会显示页面,但看起来并不正确......当在移动设备上查看时,它会被放大并移位。 / p>
************The Javascript to detect mobile device************
var mobile = (/iphone|ipad|ipod|android|blackberry|mini|windows\sce|palm/i.test(navigator.userAgent.toLowerCase()));
if (mobile) {
document.location = "http://www.somedomain.com/mobile.html"; }
}
************jQuery Mobile button for Full Site ***************
<ul data-role="listview" data-inset="true">
<li>
<a href="http://www.somdomain.com/?view=full">Full Site</a>
</li>
</ul>
如何在移动设备上重定向到完整网站?
答案 0 :(得分:3)
显然你会回到移动网站,因为它会运行你的检测脚本并直接重定向你。您需要使用技术来避免这种情况。
您需要查看刚刚从移动网站上传来的完整网站,并且不想回去。
完整网站上的一些示例:
希望这能让你顺利上路。
答案 1 :(得分:3)
感谢Gillian Lo-Wong,我能够得到以下代码为我工作......
home.html的
function urlParam(name){
var results = new RegExp('[\\?&]' + name + '=([^&#]*)').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://www.mysite.com/mobile.html";
}
// ]]>
}
和mobile.html代码
<a href="http://www.mysite.com?view=full" data-ajax="false">Full Site</a>
答案 2 :(得分:0)
您可以尝试将rel="external"
添加到指向您桌面网页的<a>
链接:
<ul data-role="listview" data-inset="true">
<li>
<a href="http://www.somdomain.com/?view=full" rel="external">Full Site</a>
</li>
</ul>
这将禁用Ajax导航,并确保刷新页面,删除将桌面页面转换为移动页面的数据。
如果这对您有用,请告诉我。