HOME>WEBプログラム覚書>jQuery UIメモ 2

jQuery UIメモ 2

jQuery UIメモ 1の続き。 前回同様とくに内容はありません。

エフェクト

jQuery UIには様々なエフェクトが用意されてます。 どんなエフェクトがあるのかは下記のページにて完璧な形で例示されています。

参照サイト

サンプル

上記ページが完璧すぎて書くこともなかったので、 画像の上に半透明のレイヤーを乗せてマウスオーバーでスライドさせるという これまた探せばすぐ見つかるようなサンプル書いてみました。

これは・・・画像次第でちょっとそそる感じになりますねw

Javascript

Javascript

  1. $(function(){
  2.     $('#Gallery p').each(function(i){
  3.  
  4.         var img = $(this).find('img');
  5.         var img_height = img.height();
  6.         var img_width = img.width();
  7.  
  8.         /**
  9.          * イメージ上にかぶせる部分
  10.          */
  11.  
  12.         var style_padding = 0;
  13.         var overray_height = (img_height / 2) - (style_padding);
  14.         var overray_width = img_width - (style_padding * 2);
  15.         var overray_txt = img.attr('alt');
  16.         var overray = $('<div class="imgAlt">' + overray_txt + '</div>');
  17.  
  18.         /**
  19.          * 当たり判定用のエリア 一番上にかぶせる
  20.          * これが無いとマウスオーバーとマウスリリースが
  21.          * おかしくなる
  22.          */
  23.         var erea = $('<div class="erea"></div>');
  24.  
  25.         /* ここからCSS *********************************************/
  26.         $(this).css({
  27.             height: img_height + 'px',
  28.             width: img_width + 'px',
  29.             border: '5px solid #CCCCCC',
  30.             position: 'relative'
  31.         });
  32.  
  33.         overray.css({
  34.             height: overray_height + 'px',
  35.             width: overray_width + 'px',
  36.             padding: style_padding + 'px',
  37.             color: '#FFFFFF',
  38.             fontSize: '140%',
  39.             fontWeight: 'bold',
  40.             lineHeight: '1em',
  41.             overflow: 'hidden',
  42.             backgroundColor: '#000000',
  43.             position: 'absolute',
  44.             top: overray_height + 'px',
  45.             left: '0px',
  46.             zIndex: '50',
  47.             opacity: 0.8
  48.         });
  49.  
  50.         erea.css({
  51.             height: img_height + 'px',
  52.             width: img_width + 'px',
  53.             position: 'absolute',
  54.             top: '0px',
  55.             left: '0px',
  56.             zIndex: '100',
  57.         });
  58.  
  59.         img.css({
  60.             border: 'none'
  61.         });
  62.  
  63.         /* ここまでCSS *********************************************/
  64.  
  65.         erea.hover(function(){
  66.             overray.stop(false, true).hide('slide', {direction: "down"}, 'fast');
  67.         }, function(){
  68.             overray.stop(false, true).show('slide', {direction: "down"}, 'fast');
  69.         });
  70.  
  71.         overray.insertAfter(img);
  72.         erea.insertAfter(overray);
  73.  
  74.     });
  75. });
  76.  

HTML

HTML

  1. <div id="Gallery">
  2.     <p><img src="path/to/img.gif" /></p>
  3.     <p><img src="path/to/img.gif" /></p>
  4.     <p><img src="path/to/img.gif" /></p>
  5.     ・
  6.     ・
  7.     ・
  8. </div>
  9.  
投稿日 2010年4月14日 04:35
カテゴリ JavaScript
タグ jQuery | jQuery UI | サンプルコード
トラックバック URL http://www.kantenna.com/cgi-bin/mt504/mt-tb.cgi/1207

コメント

コメントする
Name
Email Address
URL