ホームページ ウェブフロントエンド jsチュートリアル jquery_jquery に基づく画像ホバー プラグイン

jquery_jquery に基づく画像ホバー プラグイン

May 16, 2016 pm 06:28 PM
hover jquery 写真

まずは使い方を見てみましょう。
デモのアドレスhttp://demo.jb51.net/js/jCutter_jquery/demo.htm
HTML ファイルは次のようになります:

コードをコピーします コードは次のとおりです:




クリック後のページの内容です


呼び出すには、次のように記述する必要があります:

コードをコピーします コードは次のとおりです。
$(document).ready(function(){
options={
'speedIn':600, //画像が
'speedOut に入ったときのアニメーション速度':400, //画像が終了するときのアニメーション Speed
'easeIn':'easeOutBounce', //画像が開始するときのアニメーション効果 この効果にはイージング ライブラリが必要です
'easeOut':'' //アニメーション画像が終了するときの効果
}
$('.jcutter').jCutter(options);
})

もちろん、このプラグインを引用する必要があります。このプラグインの書き方を説明していきます。
1. jQuery プラグインの作成方法
jQuery プラグインを作成するには、以下に示すように、まず必要な構造が必要です。

コードをコピーします コードは次のとおりです:
(function($){
$.fn.jCutter = function(o){
o = $.extend({
speedIn: 300,
speedOut: 300,
easeIn: '',
easeOut: ''
}, o ||
); };
})(jQuery );

この構造は最終結果とは少し異なりますが、一般的な jQuery プラグインの構造は次のとおりです。
まず名前空間を汚さずにクロージャの形式で記述し、次に jQuery が提供するインターフェースに従って記述します。ここでの jCutter は独自のプラグインの名前に変更できます。 $.extend は非常に興味深い関数で、最初と 2 番目のパラメーターを組み合わせて、両方のパラメーターに含まれる値を後者で置き換えます。
2. 記述を開始します
この例では、セレクターを使用する必要があるため、いくつかの修正を加えて構造を次のように変更します。

コードをコピー コードは次のとおりです。
(function($){
$.jCutter = function(node, o){
o = $.extend({
speedIn: 300,
speedOut: 300,
easeIn: '',
easeOut: ''
}, o {});
var that = this;
that.generate = function(){
};
that.cutter = function(){
};
$.fn.jCutter = function(o){
this.each (function(i){
$.jCutter(this,o);
})(jQuery); $.jCutter jQueryにクラスを追加して、より便利に操作できるようにするという意味です。上記の構造を見ると、プログラムのロジックが init() を使用していくつかの初期化タスクを実行し、次にgenerate() を使用して必要な構造を生成し、最後にカッター() を使用してアニメーションとイベントを完了していることがわかります。効果。
3. 初期化手順
初期化する必要があるのは主にいくつかのパラメータであり、次に変更が必要な画像を見つけて、最後にレンダリングします。どれも比較的簡単な操作です。




コードをコピー

コードは次のとおりです。


that.init = function(){
that .node = $(node); that.img = that.node.find('img'); that.speedIn = o.speedIn; that.speedOut = o.speedOut ; that.easeIn = o.easeOut; that.cutter(); 🎜> 4. 必要な構造を生成します
この効果の原理は、画像を 4 つのレイヤーにコピーし、4 つのレイヤーを相対的に配置してから、画像を組み合わせることで、アニメーション効果が得られます。達成 。




コードをコピー


コードは次のとおりです:

that.generate = function(){
var w = that.node.width() / 2;
var h = that.node.height() / 2;
that.imga = [];
for (var i = 0; i that.imga[i] = document.createElement('div');
that.imga[i] = $(that.imga[i]);
that.imga[i].css({
'位置': '絶対',
'z-index': '2',
'幅': w,
'高さ': h,
'背景': 'url("' that.img.attr("src") '") no-repeat'
});
$(that.node).append(that.imga[i]);
}
that.imga[0].css({
'left': '0px',
'top': '0px'
});
that.imga[1].css({
'right': '0px',
'top': '0px',
'background-position': '-' w 'px ' ' 0px'
});
that.imga[2].css({
'left': '0px',
'bottom': '0px',
'background-position': '0px' ' -' h 'px'
});
that.imga[3].css({
'right': '0px',
'bottom': '0px',
'background-position': '-' w 'px ' '-' h 'px'
});
that.img.remove();
};

ここの位置コードも、最初に外側の層の高さと高さを取得してから計算し、再度 4 つの層を作成し、4 つの層に対応する位置コードを書き込むため、注意が必要です。ここでは、対応する html コードを直接書き込むこともできますが、わかりやすくするために、説明者の書き込み方法を採用し、最初に div を作成してから、ここに配置する必要があります。
五、アニメーション エフェクトの追加、イベント処理プログラムへの注釈
は構造のタスクを完了しました。次のステップはアニメーション エフェクトの追加です。この 4 つの図層をマウスで保存するだけです。過ぎ去った季節は外の層を移し、しかしネズミが堇离开の時間に再び位置することができ、書き来ても常にある简单、看代:
复制代 代码如下:

that.cutter = function(){
var w = that.node.width() / 2;
var h = that.node.height() / 2;
that.node.hover(function(){
that.imga[0].stop().animate({
'left': '-' w,
'top': ' -' h
}, that.speedOut, that.easeOut);
that.imga[1].stop().animate({
'right': '-' w,
' top': '-' h
}, that.speedOut, that.easeOut);
that.imga[2].stop().animate({
'left': '-' w,
'bottom': '-' h
}, that.speedOut, that.easeOut);
that.imga[3].stop().animate({
'right': ' -' w,
'bottom': '-' h
}, that.speedOut, that.easeOut)
}, function(){
that.imga[0].stop( ).animate({
'left': 0,
'top': 0
}, that.speedIn, that.easeIn);
that.imga[1].stop(). animate({
'right': 0,
'top': 0
}, that.speedIn, that.easeIn);
that.imga[2].stop().animate( {
'左': 0,
'下': 0
}, that.speedIn, that.easeIn);
that.imga[3].stop().animate({
'right': 0,
'bottom': 0
}, that.speedIn, that.easeIn)
})
};

.stop() 関数の作用は、イベントが再度発生したときに、前のアニメーションも実行中に停止し、アニメーションを停止することにより、このような効果がより自然に得られます。 .easeOut パラメータは、アニメーションのモードを設定するために使用され、承認されている jQuery クラスには 2 つの単純な線形性があり、以下に jQuery.easing クラスをロードして、より多くの効果を追加できます。完全な代码如下:

复制代码 代码如下:

(function($){
$.jCutter = function(node, o){
o = $.extend({
speedIn: 300,
speedOut: 300,
easeIn: '',
easeOut: ''
}, o || {});
var that = this;
that.init = function(){
that .node = $(node);
that.img = that.node.find('img');
that.speedOut = o.speedOut; >that.easeIn = o.easeIn;
that.generate();
that.generate = function(){
var w = that.node.width() / 2;
var h = that.node.height() / 2;
that.imga = []; (var i = 0; i that.imga[i] = document.createElement('div');
that.imga[i] = $(that.imga[i] ]);
that.imga[i].css({
'位置': '絶対',
'z-index': '2',
'幅': w,
'高さ': h,
'背景': 'url("' that.img.attr("src") '") no-repeat'
});ノード).append(that.imga[i]);
}
that.imga[0].css({
'left': '0px',
'top': '0px '
});
that.imga[1].css({
'右': '0px',
'上': '0px',
'背景位置' : '-' w 'px' ' 0px'
});
that.imga[2].css({
'left': '0px',
'bottom': '0px',
'background-position': '0px' ' -' h 'px'
});
that.imga[3].css({
'right': '0px',
'bottom': '0px',
'background-position': '-' w 'px ' '-' h 'px'
});
that.img.remove();
};
that.cutter = function(){
var w = that.node.width() / 2;
var h = that.node.height() / 2;
that.node.hover(function(){
that.imga[0].stop().animate({
'left': '-' w,
'top': ' -' h
}, that.speedOut, that.easeOut);
that.imga[1].stop().animate({
'right': '-' w,
' top': '-' h
}, that.speedOut, that.easeOut);
that.imga[2].stop().animate({
'left': '-' w,
'bottom': '-' h
}, that.speedOut, that.easeOut);
that.imga[3].stop().animate({
'right': ' -' w,
'bottom': '-' h
}, that.speedOut, that.easeOut)
}, function(){
that.imga[0].stop( ).animate({
'left': 0,
'top': 0
}, that.speedIn, that.easeIn);
that.imga[1].stop(). animate({
'right': 0,
'top': 0
}, that.speedIn, that.easeIn);
that.imga[2].stop().animate( {
'左': 0,
'下': 0
}, that.speedIn, that.easeIn);
that.imga[3].stop().animate({
'right': 0,
'bottom': 0
}, that.speedIn, that.easeIn)
})
};
that.init();
};
$.fn.jCutter = function(o){
return this.each(function(i){
$.jCutter(this,o);
});
};
})(jQuery);


非常に興味深い効果、明確な、コードも単純で、手作りの良いものです。 /26031.html
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

小紅書で公開するときに写真が自動的に保存される問題を解決するにはどうすればよいですか?投稿時に自動保存された画像はどこにありますか? 小紅書で公開するときに写真が自動的に保存される問題を解決するにはどうすればよいですか?投稿時に自動保存された画像はどこにありますか? Mar 22, 2024 am 08:06 AM

ソーシャルメディアの継続的な発展に伴い、Xiaohongshu はますます多くの若者が自分たちの生活を共有し、美しいものを発見するためのプラットフォームとなっています。多くのユーザーは、画像を投稿する際の自動保存の問題に悩まされています。では、この問題をどうやって解決すればよいでしょうか? 1.小紅書で公開するときに写真が自動的に保存される問題を解決するにはどうすればよいですか? 1. キャッシュをクリアする まず、Xiaohongshu のキャッシュ データをクリアしてみます。手順は次のとおりです: (1) 小紅書を開いて右下隅の「マイ」ボタンをクリックします。 (2) 個人センター ページで「設定」を見つけてクリックします。 (3) 下にスクロールして「」を見つけます。 「キャッシュをクリア」オプションを選択し、「OK」をクリックします。キャッシュをクリアした後、Xiaohongshu を再起動し、写真を投稿して、自動保存の問題が解決されるかどうかを確認します。 2. 小紅書バージョンを更新して、小紅書が正しく動作することを確認します。

TikTokのコメントに写真を投稿するにはどうすればよいですか?コメント欄の写真への入り口はどこですか? TikTokのコメントに写真を投稿するにはどうすればよいですか?コメント欄の写真への入り口はどこですか? Mar 21, 2024 pm 09:12 PM

Douyin のショートビデオの人気により、コメント エリアでのユーザーのやり取りがより多彩になりました。ユーザーの中には、自分の意見や感情をよりよく表現するために、コメントで画像を共有したいと考えている人もいます。では、TikTokのコメントに写真を投稿するにはどうすればよいでしょうか?この記事では、この質問に詳しく答え、関連するヒントと注意事項をいくつか紹介します。 1.Douyinのコメントに写真を投稿するにはどうすればよいですか? 1. Douyinを開く: まず、Douyin APPを開いてアカウントにログインする必要があります。 2. コメントエリアを見つける:短いビデオを閲覧または投稿するときに、コメントしたい場所を見つけて「コメント」ボタンをクリックします。 3. コメントの内容を入力します: コメント領域にコメントの内容を入力します。 4. 写真の送信を選択します。コメント内容を入力するインターフェースに「写真」ボタンまたは「+」ボタンが表示されます。

iPhone で写真をより鮮明にする 6 つの方法 iPhone で写真をより鮮明にする 6 つの方法 Mar 04, 2024 pm 06:25 PM

Apple の最近の iPhone は、鮮明なディテール、彩度、明るさで思い出を捉えます。ただし、場合によっては、画像が鮮明に見えなくなる問題が発生することがあります。 iPhone カメラのオートフォーカスは大きく進歩し、写真をすばやく撮影できるようになりましたが、状況によってはカメラが誤って間違った被写体に焦点を合わせ、不要な領域で写真がぼやけてしまうことがあります。 iPhone 上の写真の焦点が合っていない場合、または全体的に鮮明さが欠けている場合は、次の投稿を参照して写真を鮮明にすることができます。 iPhone で写真を鮮明にする方法 [6 つの方法] ネイティブの写真アプリを使用して写真をクリーンアップしてみることができます。さらに多くの機能やオプションが必要な場合

PPT画像を1枚ずつ表示させる方法 PPT画像を1枚ずつ表示させる方法 Mar 25, 2024 pm 04:00 PM

PowerPoint では、画像を 1 枚ずつ表示するのが一般的な手法ですが、これはアニメーション効果を設定することで実現できます。このガイドでは、基本的なセットアップ、画像の挿入、アニメーションの追加、アニメーションの順序とタイミングの調整など、この手法を実装する手順について詳しく説明します。さらに、トリガーの使用、アニメーションの速度と順序の調整、アニメーション効果のプレビューなど、高度な設定と調整が提供されます。これらの手順とヒントに従うことで、ユーザーは PowerPoint で次々に表示される画像を簡単に設定できるため、プレゼンテーションの視覚的な効果が高まり、聴衆の注意を引くことができます。

Foxit PDF Reader で PDF ドキュメントを jpg 画像に変換する方法 - Foxit PDF Reader で PDF ドキュメントを jpg 画像に変換する方法 Foxit PDF Reader で PDF ドキュメントを jpg 画像に変換する方法 - Foxit PDF Reader で PDF ドキュメントを jpg 画像に変換する方法 Mar 04, 2024 pm 05:49 PM

Foxit PDF Reader ソフトウェアも使用していますか? Foxit PDF Reader が PDF ドキュメントを jpg 画像に変換する方法をご存知ですか? 次の記事では、Foxit PDF Reader が PDF ドキュメントを jpg 画像に変換する方法について説明します。 jpg画像は以下からご覧ください。まずFoxit PDF Readerを起動し、上部のツールバーで「機能」を見つけ、「PDF to Others」機能を選択します。次に、「Foxit PDF Online Conversion」というWebページを開きます。ページ右上の「ログイン」ボタンをクリックしてログインし、「PDF to Image」機能をオンにしてください。次にアップロードボタンをクリックし、画像に変換したいPDFファイルを追加し、追加後「変換開始」をクリックします。

WPSドキュメントで2つの写真を並べて配置する方法 WPSドキュメントで2つの写真を並べて配置する方法 Mar 20, 2024 pm 04:00 PM

WPS オフィス ソフトウェアを使用すると、使用するフォームは 1 つだけではなく、テキストに表や写真を追加したり、表に写真を追加したりすることもできます。これらをすべて組み合わせて文書全体のコンテンツを作成することができます。文書に 2 つの画像を挿入し、それらを並べて配置する必要がある場合。次のコースでは、この問題を解決します。WPS ドキュメントに 2 つの写真を並べて配置する方法です。 1. まず、WPS ソフトウェアを開き、調整する画像を見つける必要があります。画像を左クリックするとメニューバーが表示されるので「ページレイアウト」を選択します。 2. 文字の折り返しで「タイト折り返し」を選択します。 3. 必要なすべての画像が「テキスト折り返し」に設定されていることを確認したら、画像を適切な位置にドラッグし、最初の画像をクリックします。

Web ページ上の画像を読み込めない場合はどうすればよいですか? 6つのソリューション Web ページ上の画像を読み込めない場合はどうすればよいですか? 6つのソリューション Mar 15, 2024 am 10:30 AM

一部のネチズンは、ブラウザの Web ページを開いたときに、Web ページ上の画像が長時間読み込めないことに気づきました。何が起こったのでしょうか?ネットワークは正常であることを確認しましたが、どこに問題があるのでしょうか?以下のエディタでは、Web ページの画像が読み込めない問題に対する 6 つの解決策を紹介します。 Web ページの画像を読み込めない: 1. インターネット速度の問題 Web ページに画像が表示されません。これは、コンピュータのインターネット速度が比較的遅く、コンピュータ上で開いているソフトウェアが多いためと考えられます。また、アクセスする画像が比較的大きいため、読み込みタイムアウトが原因である可能性があります。その結果、画像が表示されません。ネットワーク速度をより多く消費するソフトウェアをオフにすることができます。タスク マネージャーに移動して確認できます。 2. 訪問者が多すぎる Web ページに写真が表示されない場合は、訪問した Web ページが同時に訪問されたことが原因である可能性があります。

jQueryでPUTリクエストメソッドを使用するにはどうすればよいですか? jQueryでPUTリクエストメソッドを使用するにはどうすればよいですか? Feb 28, 2024 pm 03:12 PM

jQueryでPUTリクエストメソッドを使用するにはどうすればよいですか? jQuery で PUT リクエストを送信する方法は、他のタイプのリクエストを送信する方法と似ていますが、いくつかの詳細とパラメータ設定に注意する必要があります。 PUT リクエストは通常​​、データベース内のデータの更新やサーバー上のファイルの更新など、リソースを更新するために使用されます。以下は、jQuery の PUT リクエスト メソッドを使用した具体的なコード例です。まず、jQuery ライブラリ ファイルが含まれていることを確認してから、$.ajax({u

See all articles