3

jQueryを使用してポップアップボックスでiFrameを開くWebサイトにリンクがあります。jQueryスクリプトは、以下に示すように、特定の属性'id=calcPop'を持つリンクにのみこの関数を適用します。

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

すべてのコンピューターでうまく機能しますが、モバイルデバイスでは非常にバグがあります。ユーザーがモバイルデバイスを使用しているかどうかを検出し、それを「id」属性を持たないように変更する方法はありますか?

4

1 に答える 1

3

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>
于 2011-04-11T18:55:31.300 に答える