この記事では、淘宝虫眼鏡効果を実現するためのJavaScriptの具体的なコードを参考までに紹介します。具体的な内容は次のとおりです。 HTMLコード <div class="サムネイル"> <img src="./img/12-1Z930152149 (2).jpg" alt=""> <div class="拡大鏡"></div> </div> <div class="オリジナル"> <img src="./img/12-1Z930152149 (2).jpg" alt=""> </div> <script src="./index.js"></script> CSSコード *{ マージン: 0; パディング: 0; } .サムネイル、.オリジナル{ 幅: 400ピクセル; 高さ: 400px; 境界線: 1px 実線の赤; 位置: 絶対; } 。オリジナル{ 左: 450ピクセル; オーバーフロー: 非表示; 表示: なし; } .サムネイル>画像{ 幅: 400ピクセル; } .オリジナル>画像{ 幅: 800ピクセル; 位置: 絶対; } .拡大鏡{ カーソル: 移動; 幅: 200ピクセル; 高さ: 200px; 背景色:rgba(206, 198, 198, 0.5); 位置: 絶対; 上: 0; 左: 0; 表示: なし; } jsコード // サムネイル サムネイル // オリジナル オリジナル画像 // 拡大鏡 拡大鏡 $(".thumbnail").mouseover(function(){ $(".拡大鏡").表示() $(".オリジナル").表示() }) $(".thumbnail").mousemove(function(ev){ // コンソール.log(ev) // ページに対するマウスの xy 座標 var mx = ev.pageX; var my =ev.pageY; var tx = mx - $(".thumbnail").offset().left var ty = my - $(".thumbnail").offset().top var l = tx -$(".magnifier").width()/2; var t = ty -$(".magnifier").height()/2; var maxX = $(".thumbnail").width() - $(".magnifier").width(); var maxY = $(".thumbnail").height() - $(".magnifier").height() // 境界処理 if( l >maxX){ l = 最大X } if(t >maxY){ t = 最大Y } もし(l <0){ 0 = 0 です } t<0の場合{ t=0 } //虫眼鏡の位置 $(".magnifier").css({ 左: l +"px", 上: t + "px" }) //元の画像の場所$(".original >img").css({ 左:-l*2 +"px", 上:-t*2 +"px" }) }) // マウスが元の画像から離れると虫眼鏡を非表示にします$(".thumbnail").mouseout(function(){ $(".拡大鏡").非表示(); $(".オリジナル").hide(); }) 効果: 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: CSSを使用して中央に固定された2つの列と適応型列を実現する方法
MySQL 5.5 のインストールと設定方法のグラフィックチュートリアルMySQL 5.5 のインス...
Text の height 属性が定義されている場合、Text に入力されたテキストは垂直方向に中央...
zabbix を利用する上での最大のボトルネックはデータベースです。zabbix のデータストレージ...
実は多くの会社がユーザー権限ツリーに似た機能を持っています。最近、追加、削除、修正のツリー構造を書き...
一般的に、リストには選択機能があり、単一選択、二重選択、複数選択が非常に一般的です。カスタム ループ...
CSS には、一般的には使用されない 2 つの疑似クラス、before と :after があります...
<br />元の記事: http://www.alistapart.com/articl...
序文: Vue を使用する場合、多くの場合、カスタム プラグインをいくつか使用して記述し、 Vue....
大学院入試に備えて、C/C++ を使って基本的なデータ構造とアルゴリズムを実装する予定です。アルゴリ...
目次チュートリアルシリーズ1. ユーザー管理1. ユーザーアカウント2. アカウントの追加と削除3....
IE6 での CSS 背景画像のちらつきバグ (IE6 の背景画像キャッシュの問題) IE6 は、背...
目次序文文章パラメータ例Lodash 実装:トーキー機能: castPath関数: stringTo...
質問は https://www.zhihu.com/question/440231149 から参照さ...
背景 - オンラインアラートオンライン サーバーがアラームを発し、ディスク使用率 disk.util...
目次1. podmanの紹介2. Dockerと比較した利点3. 互換性4. バックグラウンド サー...