2019年3月30日

PC版Chromeでスライダーに設定したリンクをクリックしても遷移しない時の対処法

サイトのメイン画像などで画像が横にスライドする機能。SlickやSlider-Proなどいろんな種類のスライダープラグインも揃っており、jQueryでよく実装する定番機能であるスライダーですが、このスライダに設定したリンクをクリックしても遷移しない、という状況になった時の対処法を書いてみます。

クリックしても遷移しません

ある時、ふいに言われました。作成したサイトに設置したスライダーのバナーをクリックしても、リンク先に遷移しないとの事。試しに自分のPCで確認してみると、普通に遷移する。キャッシュが原因だったりするのかな?と思ってキャッシュやCOOKIEなどを削除してもらったところ、解決せず。他の人のPCでも普通に遷移したため、PCかブラウザに起因した、特定のPCだけに発生している現象なのかと一旦放置しておく。

しかしその後、他のPCでも同じ現象が発生していたので、調査することになりました。

PCのChromeのみで発生するらしい

まずは閲覧環境をちゃんと見直してみましょう、という事で確認してみると、遷移しないのはPC版のChromeのみ。IEやFirefox、Safariなどでは問題なく遷移している状態でした。

厄介なのは、同じPC版のChromeでも、PCによって遷移したりしなかったりと、バラつきがあった事。この「PCにより異なる」理由はわからなかったのですが、Chromeでのみリンクをクリックしても遷移しない原因は判明しました。

原因はスワイプ(フリック)という仕様

多くのスライダーにはスワイプという機能が標準で備わっていますね。スマホでよく使う、指で左右にフリックすることでスライダーを動かす仕様ですが、PCにも同様の仕様があり、オプションで指定しないと、標準でスワイプが機能する状態になっていることがほとんどです。

このスワイプはPCでいうと「左クリックを押しながらマウスを動かす」という動作になるわけですが、Chromeがリンクのクリックとスワイプを誤認し、リンクが動作せず、クリックしても遷移しない、というのが原因という事がわかりました。要はブラウザ起因のバグですね。なので、スライダープラグインの仕様を確認し、スワイプをオフ(false)にする事で、解決に至りました

以上、PC版Chromeでスライダーに設定したリンクをクリックしても遷移しない時の対処法でした。

,

コメントを残す

メールアドレスが公開されることはありません。