ホームページ > ウェブフロントエンド > jsチュートリアル > jquery_jqueryに基づいたマウスホイール駆動の画像切り替え効果の実装

jquery_jqueryに基づいたマウスホイール駆動の画像切り替え効果の実装

WBOY
リリース: 2016-05-16 15:34:48
オリジナル
1398 人が閲覧しました

jQuery は Flash に匹敵するアニメーション効果を生成できます。この記事では、例を通してマウス ホイール ドライブに基づいた画像切り替え効果を示します。

この例で達成される効果:
マウスホイールをスクロールすると画像が切り替わります。
キーボードの矢印キーをサポートして、画像切り替え効果を実現します。
クリックして画像を切り替えることと、現在の画像のリンクをクリックすることをサポートします。
進行状況バーのスライダーは、写真の数の進行状況を示します。

XHTML

<div class="demo"> 
 <div id="imageflow"> 
 <div id="jquery_jqueryに基づいたマウスホイール駆動の画像切り替え効果の実装"><img src="images/loader.gif" alt="jquery_jqueryに基づいたマウスホイール駆動の画像切り替え効果の実装" /></div> 
 <div id="captions"></div> 
 <div id="images"> 
 <img src="images/s1.jpg" alt="image1" /> 
 <img src="images/s2.jpg" alt="image2" /> 
 <img src="images/s3.jpg" alt="image3" /> 
 <img src="images/s4.jpg" alt="image4" /> 
 </div> 
 <div id="scrollbar"> 
 <div id="slider"></div> 
 </div> 
 </div> 
</div> 
ログイン後にコピー

div.demo は最も外側のレイヤーであり、スクロール効果全体に必要なすべての要素 が含まれています。 #imageflow は必須であり、その中に含まれる要素の ID 名は変更できません。実際に変更したい場合は、まず JS コード を定義するか、直接変更する必要があります。 #jquery_jqueryに基づいたマウスホイール駆動の画像切り替え効果の実装 はローディングアニメーション画像をロードするために使用されます。もちろん、「jquery_jqueryに基づいたマウスホイール駆動の画像切り替え効果の実装」または他のテキストを直接記述することもできます。 #captions は、画像のキャプションを表示するために使用されます。 #imagesスクロールして切り替えたい画像を配置します。数に制限はありません。 #scrollbar は、画像を表示するプログレスバーです。 #sliderは、写真を切り替えるときに、スライダーが対応する位置にスライドして写真の数を表示します。
CSS

.demo { width:860px; height:300px; margin:20px auto; position:relative; background:#e8f5fe; overflow:hidden } 
#images { margin:20px 0 0 60px; width:860px } 
#images img { position:absolute; margin-top:-160px } 
#jquery_jqueryに基づいたマウスホイール駆動の画像切り替え効果の実装 { margin:0; color:#fff; text-align:center } 
#jquery_jqueryに基づいたマウスホイール駆動の画像切り替え効果の実装 img { position:ralative; margin:0 } 
#captions { position:relative; height:24px; line-height:24px; top:100px; left:320px; background:url(images/cap_bg.png) no-repeat center center; color:#fff; font-weight:bold; text-align:center; z-index:10000 } 
#scrollbar { position:relative; top:-100px; height:2px; z-index:10001 background:#abcd3a url(images/scroll.gif) repeat-x; 
} 
#slider { position:absolute; width:15px; height:4px; margin:-1px 0 0 -1px; background:url(images/bar.gif) no-repeat; z-index:10002 } 
ログイン後にコピー

CSS は、全体の効果を実現するための重要な部分です。CSS が適切に制御されていないと、期待する効果が得られません。
.demo は、幅と高さを設定し、マウス ホイールのスクロール範囲を .demo に制限するために、position:relative と overflow:hidden を設定します。 #images はマージン値を設定し、内部画像の相対位置を設定します。 #captions は、画像のタイトルの表示に使用されるスタイルを設定します。背景画像として半透明の画像 cap_bg.png を使用していることに注意してください。透明な PNG 画像は IE6 ではサポートされていません。関連する処理が必要です。次に、スクロール プログレス バーとスライダーの設定を見てみましょう。これらはすべて、位置と深さの設定を使用するものです。なぜこのように設定されているのかがわかります。
jqueryライブラリとsliding jsファイルを紹介します

<script type="text/javascript" src="js/jquery.js"></script> 
<script type="text/javascript" src="js/imageflow.js"></script> 
ログイン後にコピー

すべての js アクションは imageflow.js で完了しており、わずかな変更を加えただけなので、誰でもそれを直接使用できます。
これで効果がわかります。しかし、まだ問題があります:
画像のリンクアドレスを取得するにはどうすればよいですか?
最終的な効果は、現在表示されている画像をクリックすると、画像に関連する詳細情報を表示するページに接続されることです。では、このリンク アドレスを取得するにはどうすればよいでしょうか? 252 行目から始まる 2 行のコードがあります:

image.url = image.getAttribute("longdesc"); 
image.ondblclick = function() { document.location = this.url; } 
ログイン後にコピー

画像のリンク アドレスはその属性 longdesc から取得されていることがわかります。画像をクリックすると、対応するアドレス ページにジャンプします。さて、最初の XHTML コードに戻ったので、各画像に longdesc 属性を割り当て、その値を対応する Web ページのアドレスに設定するだけです。例:

<img src="images/s1.jpg" alt="image1" longdesc="#" /> 
ログイン後にコピー

これでタスクは完了です。この例を読むと、imageflow がすべてのオペレーション コードをすでに完了しているため、jquery コードがまったく必要ないことがわかります。

以上がこの記事の全内容です。皆様の学習のお役に立てれば幸いです。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート