如果用户使用移动设备,则更改网页内容

发布于 2024-10-31 21:44:42 字数 256 浏览 0 评论 0原文

我在网站上有一个链接,可以使用 jQuery 在弹出框中打开 iFrame。 jQuery 脚本仅将此函数应用于具有特定属性“id=calcPop”的链接,如下所示。

<a href="calculator.html" id="calcPop">Click here</a>

它在所有计算机上都能很好地工作,但在移动设备上却有很多问题。有没有办法检测用户是否在移动设备上,然后将其更改为不具有“id”属性?

I have a link on a website that opens an iFrame in a popup box using jQuery. The jQuery script applies this function only to the link that has the specific attribute 'id=calcPop' as you can see here below.

<a href="calculator.html" id="calcPop">Click here</a>

It works great on all computers, but is very buggy on mobile devices. Is there a way to detect if a user is on a mobile device and then change that to not have an 'id' attribute?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

沧桑㈠ 2024-11-07 21:44:42

如果你不能使用像 PHP 这样的服务器端语言,那么只需使用 JS 删除 ID - 如果你有 jQuery,类似这样的东西就可以解决问题:

$("#calcPop").attr("id", "");

检测你是否在移动设备上是相当复杂的,因为有很多移动设备。

您可以使用类似的内容:

var isMobile = navigator.userAgent.match(/Mobile/i) != null;

要在 UA 中查找带有移动设备的内容(将与 iPod/iPad/iPhone 匹配),不确定其他内容,您必须进行检查。

将其放在 document.ready 闭包中:

var isMobile = navigator.userAgent.match(/Mobile/i) != null;
if (isMobile) {
    $("#calcPop").attr("id", "");
}

在 PHP 中,您可以执行以下操作:

<?php
$isMobile = (bool) strpos($_SERVER['HTTP_USER_AGENT'],'Mobile');

if ($isMobile) {
    $id = "calcPop";
} else {
    $id = "";
}
?>

<a href="calculator.html" id="<?= $id ?>">Click here</a>

If you can't use a serverside language like PHP, then just remove the ID using JS – if you have jQuery, something like this will do the trick:

$("#calcPop").attr("id", "");

To detect whether you are on a mobile device is fairly involved as there are lots of mobile devices.

You could use something like:

var isMobile = navigator.userAgent.match(/Mobile/i) != null;

To find things with Mobile in the UA (that will match iPod/iPad/iPhone), not sure about others, you'd have to check.

Putting it together, in your document.ready closure:

var isMobile = navigator.userAgent.match(/Mobile/i) != null;
if (isMobile) {
    $("#calcPop").attr("id", "");
}

In PHP you could do something like:

<?php
$isMobile = (bool) strpos($_SERVER['HTTP_USER_AGENT'],'Mobile');

if ($isMobile) {
    $id = "calcPop";
} else {
    $id = "";
}
?>

<a href="calculator.html" id="<?= $id ?>">Click here</a>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文