以前の記事で「zoomsl-3.0.js」を使って画像を拡大(ズーム)させる方法を紹介しました。
過去の記事: 「【zoomsl】プラグインを使って画像を拡大ズームさせる方法」jQueryの古いバージョンでは動くのですがjQuery3系ではエラーが起こりうまく動かないという現象があります。
zoomsl-3.0.jsがjQueryバージョン3系で使用できない
zoomsl-3.0.jsをjQueryバージョン3系で動かそうとすると画像にマウスがのってもズームされません。
chromeなどの開発検証ツールなどで確認するとエラーが表示されているのがわかります。
おもな原因
おもにindexOfの関数が存在しないというエラーメッセージのようです。
「 zoomsl-3.0.js 」の中身を見えると「.load」という記述がありますがこちらは jQueryバージョン3系では使用できなくなりました。
過去の記事: 【loadエラー】jQuery3系でloadが廃止された解決策
jQueryバージョンを下げる
解決策としては jQueryバージョンを下げるという方法があります。
他のプラグインを使う
既存のページでjQueryバージョンを下げるのが難しい場合は他のプラグインを使うというの手です。
自分でズームを作る
スキルがある人であれば自分でjsを一から書いてズームを作るというのも方法の一つです。
zoomsl-3.0.min.jsを修正する
「.load(function 」部分を「.on(‘load’, function」に修正すると一応chrome、Firefox、Edgeでは動くようです。
上記以外のブラウザでは確認していないのでなんともいえませんが。
修正して使う場合はいろいろなブラウザで検証する必要があります。
最後に
zoomsl-3.0.jsがjQueryバージョン3系でも使えるように開発してくれたらよいですがどうしても使いたい場合は上記の方法で対応するしかなさそうです。
zoomsl-3.0.jsを修正して使うという人もしっかり検証をした方がよさそうです。
コメント