0

我正在使用它来重定向到网页的移动版本(它不在子域中)

<script type="text/javascript">
<!--
if (screen.width <= 699) {
document.location = "http://www.site.com/mobile/";
}
//-->
</script>

<script language="javascript"> 
<!--
var mobile = (/iphone|ipad|ipod|android|blackberry|mini|windows\sce|palm/i.test(navigator.userAgent.toLowerCase()));
if (mobile) ||  (navigator.userAgent.match(/iPhone/i)) || (navigator.userAgent.match(/iPod/i)) {
  location.replace("http://www.site.com/mobile/");
}
//-->
</script>

但是当我从手机访问时,我收到一个错误,即找不到服务器?

这是手机版的标题

<!DOCTYPE html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-status-bar-style" content="black" />
<meta name="viewport" content="user-scalable=no, width=device-width, initial-scale=1.0, maximum-scale=1.0"/>
<link rel="apple-touch-icon" sizes="114x114" href="images/icontwo.png">
<link rel="apple-touch-startup-image" href="images/startup.png" />

是什么原因造成的?,如果我直接输入,它似乎可以工作......

4

1 回答 1

1

为了安全起见,我会使用该对象,window.location.href因为从语义上讲,该document对象指的是 DOM 文档或页面上的 HTML 元素。此外,某些浏览器仅使用window.location.href

此外,您似乎正在使用两个重定向:

document.location = "http://www.site.com/mobile/";

location.replace("http://www.site.com/mobile/");

这可能会导致问题。location.replace实际上也破坏了后退按钮功能,这可能会导致一些奇怪的效果,更不用说激动的用户了。

另外,请确保您没有进入该网站https://

于 2013-03-29T03:37:40.147 回答