1

我使用mdetect.js的是从 mobileesp.com 获得的。该文件看起来非常适合我的需要,并且我已将其保存在本地。然后在我的 HTML 页面上,我想调用其中一个函数,如果它返回 true(即用户在移动设备上),则在页面顶部显示一个表格,说明我们的网站目前不支持移动设备。但是,在到达那里之前,我已经失败了:

<html>
<head>
<script type="text/javascript" src="mdetect.js"></script>
</head>
<body>
<h1>header 1</h1>
<script type="text/javascript">
document.write(DetectIphoneOrIpod());
</script>
<p>this is normal body text</p>
</body>
</html>

我究竟做错了什么?我什至没有接触过复杂的东西(至少对我来说)。为什么它不会根据从该函数返回的内容写入 true 或 false?任何帮助表示赞赏。

谢谢

4

2 回答 2

0

我不知道有什么问题,但是如果您将整个文件仅用于该功能,那就过分了。这是一个精简的版本,应该也更容易调试:

function isSmallIDevice() {
    return navigator.userAgent.search(/iPhone|iPod/i) > -1;
}
于 2012-04-29T02:38:36.697 回答
0

我认为你想要做的是这样的:

<html>
<head>
<script type="text/javascript" src="mdetect.js"></script>
</head>
<body>
<h1>header 1</h1>
<script type="text/javascript">
    if (DetectIphoneOrIpod()) {
        document.write("<table>...</table>");
    }
</script>
<p>this is normal body text</p>
</body>
</html>

但是,您可能希望使用DetectSmartphone()DetectMobileQuick()功能来检测更多的移动设备,而不仅仅是 iPhone 和 iPod Touch。

于 2012-04-29T02:45:59.087 回答