jQueryによる画像切替動作のカスタマイズ方法

このQ&Aのポイント
  • jQueryを使用してWebページの画像切替動作をカスタマイズする方法について説明します。
  • autoPlayオプションをfalseに変更し、メニューからマウスポインタが外れた時やメニューにマウスオーバーしていない状態の時に常に1つの画像を表示する方法を紹介します。
  • さらに、画像切り替えの際にフェード効果を追加する方法も解説します。jQuery初心者でも理解しやすいように詳細な記述を行っています。
回答を見る
  • ベストアンサー

jQueryによる画像切替動作のカスタマイズ方法

こちら(http://blog.net-king.com/)でプラグインをダウンロードし、自分のWebページに設置させていただきました。 optionのところのautoPlayをfalse(自動切り替えしない)に変更し、 こちら(http://okwave.jp/qa/q7571450.html)の質問・回答を参考にさせて頂き、各ページごとに、最初に表示される画像を変更・表示することが出来ました。 今回質問させて頂きたいのは、 メニューからマウスポインタが外れた時・メニューにマウスオーバーをしていない状態の時に、常に1つの画像を表示する方法です。 メニュー1のページを開いた時に、最初からimg01が表示されている場合・・・ メニューボタンの2にマウスオーバーをするとimg02の画像に切り替わり、メニューボタンからマウスポインタが外れると、再度 img01に切り替わるようなイメージです。 このような動作をするよう、設定することは可能でしょうか。 出来れば元の画像に切り替わる際もフェード効果があると嬉しいです・・・ jQuery初心者により、詳しく記述していただけると幸いです。 お分かりになる方がいらっしゃいましたら、ご回答の程よろしくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.1

回答がないみたいなので… もとのスクリプトを解析してカスタマイズすれば一番よいのでしょうけれど、それができないのなら、 「エリアからマウスがはずれた時に、表示しておきたいメニューにホバーのイベントを発生させる」 というスクリプトを別個付加えるという方法でもよさそうに思います。 イベントの発生方法はブラウザによって異なりますが、例えばfirefox系であれば、  $("#image-navigation").mouseleave(function(){   var evt = document.createEvent("MouseEvents");   evt.initEvent("mouseover", false, true);   $("a", $("#image-navigation ul li").eq(2)).get(0).dispatchEvent(evt);  }); みたいにすることで、とりあえずご質問のような動作になります。 (上例では、3番目のメニューが選択状態になる)

KDM2013
質問者

お礼

ご回答頂きありがとうございます。 思い通りの動作になりました! jQueryはプラグインもたくさんありとても便利だと思うので、もとのスクリプトをカスタマイズできるよう、少しずつ勉強していきたいと思います。 ご丁寧に教えて頂き、本当にありがとうございました!!

関連するQ&A

  • jQueryでふたつの動作をさせたいのですが?

    jQueryでふたつの動作をさせたいのですが、適用のしかたがわかりません。 詳しい方、教えてください。 ■その1:ページのトップに戻す http://iuser.jp/webjin/archives/2009/11/jquery-scroll-to-top-control.html この動作単独では動きました。 ■その2:マウスオーバーで画像を変更 http://www.webcreatorbox.com/tech/jquery-tips20/ その1で、プラグインのscrolltopcontrol.jsで指示する矢印画像:scrollup.gif に、 その2のマウスオーバーをかけたいのです。 その2のマウスオーバーは、<body>内に実存する画像に対応するようになっていて、 scrolltopcontrol.js内に書かれている画像に、指示すにはどうしたら良いのかわかりません。 また、この方法ではできないのなら、「その1:ページのトップに戻す」を生かして、そのボタンに マウスオーバーをかける他の方法を教えてください。

  • jqueryによる画像切り替えのカスタマイズ

    jqueryによる画像切り替えのカスタマイズについて こちらのサイト(http://blog.net-king.com/)で、プラグインをダウンロードし、 設置・動作確認と基本的なことは完了しました。 オプションでの設定以外のことについてカスタマイズを試みたのですが、 知識不足で上手くいかず、お知恵を拝借できればと思い投稿いたしました。 実装したいカスタマイズ内容ですが、 そのままの状態だとページを開いたときにデフォルトで表示されるのは menu1の青い画像であるphoto01.jpgになっていますが こちらを任意の画像での表示にしたいのです。 (その際メニューの順番は変更なしでお願いします!) 何かご不明点等があれば補足をさせていただきます。 もしお分かりになる方がいらっしゃいましたらご教授いただければ幸いです。 どうぞ宜しくお願いいたします。

  • jQueryを使った画像の切り替え方法を教えてください

    [文字サイズ大][文字サイズ中][文字サイズ小] などのボタン画像を押したら、 フォントサイズを変更すると共に、 ボタンが押された状態の画像に切り替えたいのですが、 それをjQueryを使って実行する方法を教えてください。 http://www.lllcolor.com/web/jquery/29.html ↑フォントサイズ変更のスクリプトはこのページのものを拝借しました。 http://weboook.blog22.fc2.com/blog-entry-6.html ↑画像切り替えはこのようなシンプルなものにしたいです。 jQuery版を探したのですが、高機能なものは見つかるのですが シンプルでなおかつ自分で組み込めそうなものが見当たらなかったので…。 ★HTMLは単純にこんな感じです <a href="#" class="sizeL"><img src="img/fontL.gif"></a> <a href="#" class="sizeM"><img src="img/fontM.gif"></a> <a href="#" class="sizeS"><img src="img/fontS.gif"></a>

  • jquery-galleryviewのカスタマイズ・・・

    jquery-galleryviewをカスタマイズして自分のページに使用したいのですが、JavaScriptの知識に乏しく、どこをいじれば良いのかわかりません。 http://www.spaceforaname.com/jquery/galleryview 画像のサイズなどは変更できたのですが、 ・pointer ・next ・prev この画像だけがどこで変更させるのかが分からず困っています。 画像を置き換えても、サイズが固定されているようで、小さな画像に置き換えてもデフォルトの大きさに引き伸ばされます。 解説サイトやおわかりになる方、是非アドバイスお願いします><

  • jQueryで背景画像と複数画像を変更

    jqueryで、divのボックス全体をリンクにし、マウスオーバーでdiv内の画像2点とdivの背景画像を変更したいと考えております。 <div class="linkbox">  <img src="image01.gif">  <img src="image02.gif"> </div> マウスオン用の画像は image01_on.gif image02_on.gif bg01_on.gif と、統一して「_on」をつけております。 マウスオーバーで背景を変更する方法とマウスオーバーで画像を変更する方法とボックス全体をリンクにする方法はそれぞれ見つけたのですが、うまく組み合わせることができません… 何か解決策がございましたら教えてください。 よろしくお願いいたします。

  • Jqueryについて困っております><

    はじめまして jqueryに触れる事が初めてなのですが、緊急にクライアントの要望に応える形になり困っております… 1つめは、gifアニメ風にマウスをあてると絵が動くという物なのですが、それが1ページ内に動かしたい対象が複数ある場合の設定方法です。 >>http://suzken.com/2010/10/jquery-img-anime.html こちらの方のHPで動かし方がありましたが、この複数のやり方が分かりません。 2つ目は、上記gifアニメ風のアイコンにマウスカーソルをあてた時に動きを見せる+吹き出しの様なメニューが表示され、1文字ずつテキスト表示させたい。です。 吹き出しの様な物を表示させる事と、文字を出すことはできたのですが、マウスオーバーした瞬間に1文字表示が始まってしまい、マウスを離しても文字だけが画面上に残ってしまいます。 色々調べながら調整してはいるのですが、中々うまくいかず… 何か解決策がありましたら、お手数ではありますが何卒お力をお貸しいただきたいです><

  • jquryを利用した画像切り替え

    jqury(1.3)を利用しマウスオーバー,アウトで画像切り替えを行おうとしています。 マウスオーバーで特定の箇所に画像入れ替えする事はできたのですがマウスアウトで最初の画像に 戻すにはどうすればいいのでしょうか?具体的には・・・ <div><img id="target" src="最初の画像" /></div> <div class="thumbnail"> //以下の画像はマウスオーバーでtargetに拡大表示、マウスアウトで拡大画像を消し最初の画像に戻したい <a href="1の拡大"><img src="1の縮小" /></a> <a href="2の拡大"><img src="2の縮小" /></a> <a href="3の拡大"><img src="3の縮小" /></a> </div> という具合です。jsは以下のようにしたところマウスオーバーで切り替えは可能になったのですが戻すことができない状態です。 .hover( function(){// マウスオーバー時 $(this).fadeTo(200, 1.0); var changeSrc = $(this).attr("href"); $("#target").attr("src", changeSrc); }, function(){// マウスアウト時 $(this).fadeTo(500, 0.8); //ここで戻す処理をすると思うのですが方法がわかりません } ) 詳しい方がいらっしゃいましたら宜しくお願い致します。

  • jQuery を使って下記のようなことは可能でしょうか。また可能な場合

    jQuery を使って下記のようなことは可能でしょうか。また可能な場合参考になるテンプレートのようなものがある場所を教えていただけますと幸いです。 http://www.nittsu.co.jp/index.html のサイトのグローバルメニュー下のFlashコンテンツ。 やりたいことは、 同じように右側に4つのボタンを縦に配置して、マウスオーバーをすると左側のイメージが変更されるようにしたい。 また、右側のボタンをクリックするとリンクされているページに飛ぶ形。 表示されるイメージは、フェードインなどのように動的に表示される必要はなく、単純に静的なイメージが切り替わる感じです。 よろしくお願いいたします。

  • CSSでグローバルナビゲーションメニューをつくりたい

    CSSで、グローバルナビゲーションメニューのボタンリンクをコーディングしたいと思っています。ボタンをマウスでポインタしたらロールオーバーし、カレントページのボタンはマウスでポイントした時と、同じようにロールオーバー画像を表示させたいと思っておりますが、可能なのでしょうか?

  • jQueryの隣接セレクターが上手く動作しない

    jQueryを用いてギャラリーのページを作成しています。 ページのイメージは上部にサムネイル画像が並べてあり、その下にクリックされたサムネイル画像に対応する大きな画像を表示するというものです。その中で隣接セレクターが上手く動作せず悩んでいます。どなたか教えていただきたく、よろしくお願いいたします。 具体的には HTML部分 <\-- サムネイル部分 --> <div id="navi"> <ul> <li> <a href="images/img1.jpg"><imgsrc="images/img1_thum.jpg" alt="作品1" /></a>  </li> : : </ul> </div> <\-- 大きな画像表示部分 --> <div id="main"> <img src="とりあえず最初の作品のパス" alt="最初の作品"/> </div> jQuery部分 $(function(){ $("#navi a").click(function(){ var filename=$(this).attr("href"); var altname=$("+img",this).attr("alt"); : : ここで、filenameには a要素のhref属性の値が入るのですが、altnameが undefined になってしまいます。 私は $("+img",this).attr("alt");  で  this (この場合はa要素)の次のimg要素のalt属性 (たとえば「最初の作品」)が返ると考えているのですがなにが間違っているのでしょうか?