jquery实现的3D缩略图悬停效果
生活随笔
收集整理的這篇文章主要介紹了
jquery实现的3D缩略图悬停效果
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
今天我們要告訴你如何創建一些令人興奮的3D使用CSS3和jQuery懸停效果。這一想法的靈感來自于涼爽的懸停效果,再給客戶做網站的時候用的這樣的效果,今天就共享出來
在這個效果當中,我將使用的thumbails,就會發現一些更多的信息懸停。將創建一個使用jQuery的結構,將允許的圖象出現折疊或彎曲,當他懸停時候。為懸停效果,我們將使用CSS 3D變換。效果如下 ?演示? ? ?下載
鼠標經過時候
看看火狐下面的效果,鼠標經過的時候展示出3D變換效果
?
thumbnail 的DIV代碼如下所示
?
1 <div id="grid" class="main"> 2 3 <div class="view"> 4 5 <div class="view-back"> 6 <span data-icon="A">566</span> 7 <span data-icon="B">124</span> 8 <a href="http://www.flickr.com/photos/ag2r/5439506585/in/photostream">→</a> 9 </div> 10 11 <img src="images/1.jpg" /> 12 13 </div> 14 15 <div class="view"> 16 17 <!-- ... --> 18 19 </div> 20 21 <!-- ... --> 22 23 </div>每個縮略圖的背視圖部分,我們要為每個背景圖部分創建與使用JavaScript?類視圖的結構如下:
1 <div class="view"> 2 3 <div class="view-back"> 4 <!-- ... --> 5 </div> 6 7 <div class="slice s1" style="background-image: url(images/1.jpg); "> 8 <span class="overlay"></span> 9 10 <div class="slice s2" style="background-image: url(images/1.jpg); "> 11 <span class="overlay"></span> 12 13 <div class="slice s3" style="background-image: url(images/1.jpg); "> 14 <span class="overlay"></span> 15 16 <div class="slice s4" style="background-image: url(images/1.jpg); "> 17 <span class="overlay"></span> 18 19 <div class="slice s5" style="background-image: url(images/1.jpg); "> 20 <span class="overlay"></span> 21 </div><!-- /s5 --> 22 23 </div><!-- /s4 --> 24 25 </div><!-- /s3 --> 26 27 </div><!-- /s2 --> 28 29 </div><!-- /s1 --> 30 31 </div><!-- /view -->每個背景圖鼠標移動的時候都會有各自的形象和作為它的背景圖片,因為我們有一個背景嵌套的結構,這將使我們能夠控制的他的效果。此外,我們將添加一個覆蓋跨度,javascript代碼如下
1 $.fn.hoverfold = function( args ) { 2 3 this.each( function() { 4 5 $( this ).children( '.view' ).each( function() { 6 7 var $item = $( this ), 8 img = $item.children( 'img' ).attr( 'src' ), 9 struct = '<div class="slice s1">'; 10 struct +='<div class="slice s2">'; 11 struct +='<div class="slice s3">'; 12 struct +='<div class="slice s4">'; 13 struct +='<div class="slice s5">'; 14 struct +='</div>'; 15 struct +='</div>'; 16 struct +='</div>'; 17 struct +='</div>'; 18 struct +='</div>'; 19 20 var $struct = $( struct ); 21 22 $item.find( 'img' ).remove().end().append( $struct ).find( 'div.slice' ).css( 'background-image', 'url(' + img + ')' ).prepend( $( '<span class="overlay" ></span>' ) ); 23 24 } ); 25 26 }); 27 28 };CSS代碼如下
1 .view { 2 width: 316px; 3 height: 216px; 4 margin: 10px; 5 float: left; 6 position: relative; 7 border: 8px solid #fff; 8 box-shadow: 1px 1px 2px rgba(0,0,0,0.05); 9 background: #333; 10 perspective: 500px; 11 }3D過度效果CSS代碼
1 .view .slice{ 2 width: 60px; 3 height: 100%; 4 z-index: 100; 5 transform-style: preserve-3d; 6 transform-origin: left center; 7 transition: transform 150ms ease-in-out; 8 9 }描述部分的CSS代碼
1 .view div.view-back{ 2 width: 50%; 3 height: 100%; 4 position: absolute; 5 right: 0; 6 background: #666; 7 z-index: 0; 8 }前臺風格跨度的代碼
1 .view-back span { 2 display: block; 3 float: right; 4 padding: 5px 20px 5px; 5 width: 100%; 6 text-align: right; 7 font-size: 16px; 8 color: rgba(255,255,255,0.6); 9 } 10 11 .view-back span:first-child { 12 padding-top: 20px; 13 } 14 15 .view-back a { 16 display: bock; 17 font-size: 18px; 18 color: rgba(255,255,255,0.4); 19 position: absolute; 20 right: 15px; 21 bottom: 15px; 22 border: 2px solid rgba(255,255,255,0.3); 23 border-radius: 50%; 24 width: 30px; 25 height: 30px; 26 line-height: 22px; 27 text-align: center; 28 font-weight: 700; 29 } 30 31 .view-back a:hover { 32 color: #fff; 33 border-color: #fff; 34 }有的瀏覽器不支持3D,我們需要額外的定義這個效果
.view {overflow: hidden; }.view:hover img {left: -85px; }.view div.view-back {background: #666; }?
?
?
?
?
轉載于:https://www.cnblogs.com/58top/archive/2012/07/18/2597187.html
總結
以上是生活随笔為你收集整理的jquery实现的3D缩略图悬停效果的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 登陆界面(jsp)客户端验证
- 下一篇: Downloading Android