フェードスライドショーを設置したい

このQ&Aのポイント
  • JavaScript初心者の方が既存のホームページにスライドショーを設置したい場合の方法についてご教授ください。
  • 希望するスライドショーの条件は、既存のページの中に設置し、自動でループすることです。また、ゆったりとした画像の切り替えを希望しています。
  • 以下のサンプルページが希望に近い内容として見つかりましたが、フェードスライドショーに編集することは可能でしょうか?ソースコードもお教えいただけると助かります。
回答を見る
  • ベストアンサー

フェードスライドショーを設置したい

JavaScript 初心者。 既存のホームページにスライドショーを設置したく勉強中です。 希望するスライドショートしては  ・既存のページの中に設置。  ・ページを開けば自動で始まり(開始等ボタンなしで)ループする。  ・画像の切り替えがゆったりしたもの。 まずは設置してみようとサンプル等探した中 下記が希望したものに一番近く自分のホームページでも動かせたのですが http://miyakekobo.fc2web.com/photo_parts/cp_01.html フェードスライドショーに編集できますか?  もし出来るなら、よろしければソースを教えていただけますか。 記述していただけるなら 許す限りの解説もしていただければありがたいのですが・・・ あつかましいお願いですがよろしくご教授ください。

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

  • ベストアンサー
回答No.1

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"> <title>Test</title> <style type="text/css"> #menu { width:640px; height:150px; border:1px red solid; margin:0px; padding:0px; list-style-type:none; overflow:hidden; position:relative; z-index:0; } #menu li { position:absolute; top:0px; left:0px; z-index:0; } #menu img { border:0px none; width:640px; height:150px; } #menu2 { width:640px; height:150px; border:1px red solid; margin:0px; padding:0px; list-style-type:none; overflow:hidden; position:relative; z-index:0; } #menu2 li { position:absolute; top:0px; left:0px; z-index:0; } #menu2 img { border:0px none; width:640px; height:150px; } </style> <ul id="menu"> <li><a href="htp:/test1/"><img src="./img/0.gif" alt="test1"></a></li> <li><a href="htp:/test2/"><img src="./img/1.gif" alt="test2"></a></li> <li><a href="htp:/test3/"><img src="./img/2.gif" alt="test3"></a></li> </ul> <ul id="menu2"> <li><a href="htp:/test1/"><img src="./img/0.gif" alt="test1"></a></li> <li><a href="htp:/test2/"><img src="./img/1.gif" alt="test2"></a></li> <li><a href="htp:/test3/"><img src="./img/2.gif" alt="test3"></a></li> <li><a href="htp:/test3/"><img src="./img/3.gif" alt="test3"></a></li> <li><a href="htp:/test3/"><img src="./img/4.gif" alt="test3"></a></li> </ul> <script type="text/javascript"> //@cc_on function ImageChanger2 (id, w, st, c) {  var a = 0;  var list = document.getElementById(id).getElementsByTagName('LI');  var S = function (n, v, z) {   var s = list[ n % list.length ].style;   s.zIndex = z;   s./*@if(1) filter = 'Alpha(opacity=' + v + ')' @else@*/ opacity = v / 100 + '' /*@end@*/;   return v >= 0;  };  r = function () {setTimeout(arguments.callee, S(c, a-=st, 3) ? 30: (S(++c, a=100, 3), S(c+1, a, 1), w)); };  r(); } ImageChanger2('menu', 3000, 1, 0); ImageChanger2('menu2', 1500, 1, 0); </script>

meah1835
質問者

お礼

大変勉強になりました ありがとうございました。

その他の回答 (6)

回答No.7

ImageChanger2('menu', 3000, 1, 0); //ul要素のid, 表示時間, 透明度の変化量, LI要素の何番目から始める と、・・・・。

meah1835
質問者

お礼

ですよね! 記述していただいたソース 解説していただいた文 にらめっこしながら格闘していきます。 現在、思考回路オーバーヒート間近です。 本当にありがとうございました。

回答No.6

れいせいに、よみなおしたら、・・・・・。 ><ul id="menu"> ~ </ul> (2) ←head 内に記述 は、bodyにかくうんとちゃうの? ><tr> ><script type=" ~ </script> (3) ←body 内、表示区域に記述 ></tr> な、な、なんでそこにスクリプトが?

meah1835
質問者

補足

度々のご指導ありがとうございます。 >bodyにかくうんとちゃうの? >なんでそこにスクリプトが?  そうなんですよ  <ul id=" ~を body 内に置いても表示されず困っていたのですが  ※ 解決いたしました ※ bodyの最上部にタイトル等を置き、それ以下に CSSで 750幅のスペースでページを作っていましたところ そのスペース内では表示されなかったようです。 上部の表とそれに続く下部スペースの間に <ul id=" ~を設置したところ、無事表示されました。 最後にもう一つご教授ください 0jpg を最初に持ってくれば、1jpgから 1jpg を最初に持ってくれば、2jpgからと スライドショーが 2枚目の画像から始まるのですが・・・

回答No.5

>「menu」 と、「menu2」異なるスピードのものをご用意頂いたのですね。 ひとつのかんすうで、ことなるじょうたいでもうごかせるよ!の、いみ。 <script ~> ~ </script> は、<head></head>のなかにかかないで、 </body>のちょくぜんにおくこと。

回答No.4

もしも、こんぱくとにしたら function C(i,w,t,c){ var a=0,l=document.getElementById(i).getElementsByTagName('LI'); function S(n,v,z){with(l[n%l.length].style)zIndex=z,//@cc_on filter='Alpha(opacity='+v+')', opacity=v/100;return v>=0;}(function L(){setTimeout(L,S(c,a-=t,3)?30:(S(++c,a=100,3),S(c+1,a,1),w))})() } C('menu',3000,1,0); C('menu2',1500,1,0); ^^;

回答No.3

ちょっとだけ、せつめいをいれて、しょうりゃくしないように こころがけてみた。 どんどん、きじゅつがながくなりそうなので、これくらいで。 かんすうのなかの、かんすうが、じぶんじしんをよびだしている。 そのとき、そのかんきょうが(おやもふくめて)いじされる。 なのでmenu2で、あらたによびだされたLOOPは、べつものになるじょ たぶん ^^; <script type="text/javascript"> //@cc_on function ImageChanger2 (id, wait, step, no) {  var a = 0; //透明度  var LI = document.getElementById( id ).getElementsByTagName( 'LI' ); //対象となるLIの配列  //要素の透明度と、奥行きを設定  function setOpacity ( e, alpha, z ) {   var s = e.style;   if (alpha < 0) alpha = 0;   s.zIndex = z;   s./*@if(1) filter = 'Alpha(opacity=' + alpha + ')' @else@*/ opacity = alpha / 100 + '' /*@end@*/;   return alpha > 0;  };  //繰り返し実行  function LOOP () {   var time, no2;   a -= step; //透明にしていく   if (setOpacity(LI[no], a, 3)) { //戻り値がtrueなら透明度を変化させる    time = 30;   } else { //false なら LIの要素を次にする    a = 100;    no = ++no % LI.length;    setOpacity(LI[no], a, 3);    no2 = (no + 1) % LI.length;    setOpacity(LI[no2], a, 1);    time = wait;   }   setTimeout(arguments.callee, time); //自分自身を呼び出す  };  LOOP(); } ImageChanger2('menu', 3000, 1, 0); //ul要素のid, 表示時間, 透明度の変化量, LI要素の何番目から始める ImageChanger2('menu2', 1500, 1, 0); </script>

回答No.2

はやくもていせい! r = function () ~ を var r = function()~ に

meah1835
質問者

補足

ありがとうございます。 朝から、ここまでの回答に対し格闘してお礼が遅くなり申し訳ありません。 先ほど、改めてページを開いてこれ以降の記述に気付いたしだいです。 「menu」 と、「menu2」異なるスピードのものをご用意頂いたのですね。 どちらもきれいに動きます。 ただ、 私の力不足を補っていただかなければいけないことが一点。 下記構成で、 ページ内というよりページの最上部(元のレイアウトを崩して)でしか 表示することが出来ない。 (2)を body内の任意の場所にいれてではまったく表示されないのです。 <style type="text/css">   (1) ←この間を既存の外部スタイルシートに記述 </style> <ul id="menu"> ~ </ul> (2) ←head 内に記述 <tr> <script type=" ~ </script> (3) ←body 内、表示区域に記述 </tr> 初歩的過ぎて申し訳ないのですが、正しい設置方法をご教授ください。 編集(書き換え)したのは  ・スタイルシートの画像サイズ   (元画像、700×250 )  ・画像にかかったリンク及び画像へのパス   (<li><img src="0.jpg" alt="test1"></li> です。

関連するQ&A

  • ホームページにスライドショー設置

    ホームページ作成初心者です。一昨日からいろいろ調べているのですがわからないことがあるので質問させて下さい。BiND for WebLiFE4という簡単ホームページ作成ソフトを使ってHPを作成しています。たぶんページに設置するという点では、どのソフトを使用してもやり方は同じなのだと思いますが、ページ内に写真を掲載するためのスライドショーを設置したいと思ってます。いろいろ調べてSimple Viewerというスライドショーは簡単に作成出来るフリーソフトを入手する所まで行ったのですが、このソフトで作成したスライドショーを自分のホームページに設置するやり方がわかりません。html文章を入れる・・・フラッシュのファイルをアップするなどしましたが表示されません。同じ階層に両方のファイルを・・などという情報もあったので試してみましたがダメでした。 インターネットを検索すると難しい説明(文字の羅列がいっぱいあるもの)は見つかるのですがもっと簡単に設置出来るような気がします。 よろしくお願いします。

  • おすすめのスライドショーを作るソフトを教えて下さい

    ホームページに、写真が見れるギャラリーのページがあり、スライドショーを使って写真を公開しています。 HPを作るときに使った「ホームページ ビルダー」内にある機能を使い、スライドショーを作ったのですが、新しい写真をアップする時に、既存のスライドショーに追加が出来ず、毎回初めからの作り直しをしなくてはならず、どうにかならないものかと、思っています。 スライドショーは、どのソフトを使っても、後から写真を足す事は出来ないものなのでしょうか? スライドショーを作るソフトがたくさんあるのも知っているのですが、どのソフトを使えば、求めている事ができるのか、いまいち解らず、困っています。 HPも、スライドショーも、初めて作ったので、そういった作業が、あまり得意ではありません。 初心者でも使いやすく、私の求める用途に合ったスライドショーが作れる、ソフトを御存じの方、教えて頂けないでしょうか? できれば、フリーソフトを希望しています。 宜しくお願い致します。

  • Flash マスクを使ったループスライドショー

    下記サイトのように、マスクを使ったループスライドショーを作っているのですが行き詰まっています。 http://www.taiza.jp/ やりたいことは、 外部の用意した「photo1.jpg」「photo2.jpg」「photo3.jpg」「photo4.jpg」の4枚画像を参考サイトのように下から上へと動くマスクを使ってループさせたいことです。その際、下に隠れているjpgが少し上へうごくこともやりたいです。 ループさせなければ、loadMovie("photo●.jpg", "ターゲットMC");とレイヤーのマスクを使ってできたのですが、 ループさせるとなると「photo4.jpg」から「photo1.jpg」・・・との繋ぎ方がわかりません。 このようなスライドショーを作りにはどうしたらよいのでしょうか。教えてください。 環境は、Flash CS3 Actionscript2.0 です。

    • ベストアンサー
    • Flash
  • ホームページにスライドショーを入れたいと思っているのですが、どうやった

    ホームページにスライドショーを入れたいと思っているのですが、どうやったら良いますわかりません。ホームページはフロントページ2002で作成しました。フリーソフトを導入すればいいようなことがネットに書いてありましたが、はたしてフロントページでどうやってスライドショーができるのか。教えていただける非常にうれしいです。

  • HPにスライドショーが反映されません。

    Macユーザーです。OSは10.9.5です。FC2でページを作っています。 HPにスライドショーを設置したいと思い、HTMLタグを用いてページの編集をしました。 ですが、写真が反映されなかったりページのデザインが崩れたりしてしまいます。 こちら(http://matome.bgah.jp/2014/01/javascript-bxslider/)にあるスライドショーの最終形が理想だったので、HTMLタグは本当にそのまま貼り付けて、写真はFC2のディレクトリ内にあるので既存のアドレスと置き変えました。結果、写真は反映されましたが大きさが変えられず、画面いっぱいいっぱいに表示されてしまいました。 またどこもソフトのダウンロードが必須なようで、添付先のURLに書いてある必要なものはダウンロードしました。ただ、ファイルを同じ場所に作る、imgファイルを作ってそこに使いたい写真を入れる、というのも何だか疑問です。HPのタグではPCに入っているものに干渉できませんよね?ここの説明がよくわかっていないから出来ないのでしょうか? URL先のような綺麗なスライドショーを作るにはどうしたら良いのでしょうか… 他のサイトに掲載してあるタグを試しにやってみても上手く反映されませんでした。 タグを使わなくても簡単に出来る方法があればそれも教えて頂きたいです。 どうか詳しい方、お力を貸してください…

    • ベストアンサー
    • Mac
  • Flashでスライドショーを作りたい

    FlashMXで写真のスライドショーを作ろうと思ってます。そこでループ音楽を鳴らしたいのですが、3曲の中から閲覧者が好きな曲を選ぶことが出来るようなスライドショーの作り方、またはその方法が書かれたHPを教えてください。

  • 写真のスライドショーが出来なくなってしましました

    以前、写真を見る際、写真をパソコンに落としスライドショーというものを使って見ていたのですが、気づいたら、今はスライドショーができなくなっていました。以前は《ファイルとフォルダのタスク》というところにスライドショーができるアイコンもあったのですが、今は写真をクリックするとMicrosoft Photo Editor という訳の分からないものが起動し、その中でしか見る事が出来なくなってしまいました。何とかまたスライドショーで見たいのですがどうしたらいいのかわかりません。誰か分かる方がおりましたら教えて下さい。よろしくお願いします。

  • ホームページにスライドショーを載せたいのですが? マックで

    ホームページ上にデジカメで撮った写真のスライドショーを載せたいのですが(フェードイン、フェードアウトするやつ)やり方が解りません。素人ですので分かりやすく解説してあるサイトなどありませんでしょうか? パソコンはマックでos10.4です、ホームページはアドビCS のGOliveで作ってます。よろしくお願いします。

  • ホームページにスライドショーを・・

    ホームページ作成初心者です。 ホームページのトップページに写真を数枚スライドショーで出したいのですが、どのようにしたらいいのでしょうか? スライドショーの作成方法(使用ソフトなど。。。出来ればソフトはフリーで作りたいです) ソースへの書き方 など 教えていただければ、と思います。 どうぞよろしくお願い致します。

    • ベストアンサー
    • HTML
  • ホームページをスライドショーのように見せたい

    ホームページをスライドショーのように見せたい(ページが10秒毎に切り替わるように)のですが?可能でしょうか?パワーポイントは持っているのですが?宜しくお願いします!