JavaScript PR

SPのみ電話リンクを有効にする方法

記事内に商品プロモーションを含む場合があります

電話のリンクはPCでは必要なので無効にしたい・・・ってことがありますよね。
今回は、ユーザーエージェントで切り替える方法とCSSで切り替える方法を紹介します。

SPのみ電話リンクを有効にする方法

ユーザーエージェントで電話リンクを切り替える

Javascriptを使用してユーザーエージェントを取り、AndroidかiPhoneでアクセスされた時のみ電話リンクを有効にします。
[js]
let device = navigator.userAgent;
if (device.indexOf("iPhone") === -1 && device.indexOf("Android") === -1) {
jQuery(‘a[href^="tel:"]’)
.css("cursor", "default")
.on("click", function(e) {
e.preventDefault();
});
}
[/js]

Android、iPhone以外の端末でアクセスした場合は、リンクを無効にしてくれます。

CSSで電話リンクを切り替える

こちらの方法では、横幅によってリンクを切り替えるだけなので完全にリンクを無効にすることはできません。
端末によって切り替えたい場合は上記のユーザーエージェントを使用する方法を使用してください。

[css]
@media screen and (min-width: 640px) {
a[href^="tel:"] {
pointer-events: none;
}
}
[/css]

これで、横幅が640pxを超えた時に電話リンクを無効にすることができます。
メディアクエリの値を変えることでタイミングは調節可能です。

ABOUT ME
シラツキ
当ブログは同人サークル「にんじんみるく」のシラツキが運営する個人ブログです。 同人誌即売会の情報やネタ、技術的な内容など様々なコンテンツを配信しています。 普段はwebサイト作ってる人インターネッツお絵かきマン。 Webサイトの制作、ECサイトの運営、ブログ、イラスト制作など色々やってます。 個人でWeb技術ブログ、趣味のブログ、YouTube活動中。

COMMENT

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)