この記事では、淘宝虫眼鏡効果を実現するための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つの列と適応型列を実現する方法
「脳が多数の領域間の関係を処理できるように、入力は論理的なグループに分割する必要があります。」 – ...
目次導入1. 異食症2. レナ3. コンプレッサー4. ファブリック5. ぼかす6. 画像を結合する...
この記事を読む前に、ボリューム、バインドマウント、tmpfs マウントの基本を理解しておいてください...
目次序文範囲1. スコープとは何ですか? 2. [[スコープ]] プロパティ3. スコープチェーン4...
目次1. COUNTの初見2. COUNT(フィールド)、COUNT(定数)、COUNT(*)の違い...
httpsを取得する方法を勉強しています。最近、Tencent Cloud が提供する無料の SSL...
letter-spacing プロパティ: 文字間のスペース (文字間隔) を増減します。このプロ...
XML スキーマは、DTD に代わる XML ベースのものです。 XML スキーマは、DTD に代わ...
手順は以下のとおりです1. dockerグループを作成する: sudo groupadd docke...
一緒に学びましょう1. 伝統的な方法コードをコピーコードは次のとおりです。 <object c...
MySQL 運用上の問題点を記録します。ビジネスシナリオと問題の説明外部インターフェースをリクエスト...
ソングティ: SimSun太字: SimHeiマイクロソフト YaHei: マイクロソフト YaHe...
目次1. useStateフック2. useRefフック3. useRef と useState 4...
1. フロントエンド主導の実装手順最初のステップは、ページのインポートボタンをクリックしてExcel...
この記事の例では、参考のためにvueカスタムオプションタイムカレンダーコンポーネントの具体的なコード...