滑鼠移到縮圖上會顯示該圖的大圖,大圖跟著滑鼠移動;或是移動到提示文字上,也可以顯示圖片。並且含有方向判別功能,具體來說就是如果縮圖在頁面的左半部分,則大圖顯示在滑鼠的右側,如果縮圖在頁面的右半部分,則預覽的大圖在滑鼠的左側顯示。
html結構
<a href="xx.jpg">缩略图</a>
當滑鼠覆蓋到<a></a> ;
時取得預覽圖位址
預覽圖結構
<p id='preview'><p> <img src='"+$(this).attr('href')+"' /> <p>"+$(this).attr('title')+"</p></p></p>
新增至body,使用絕對定位
- 外掛開發
因為想試下外掛程式開發的模式,所以這樣寫了
$.fn.preview=function(){ ...... }
jQuery.fn = jQuery.prototype.對prototype
每一個jq物件都可以用
<style>.imgbox{ margin-top: 150px; text-align: center;}.imgbox img { display: inline-block; width: 250px; height: 144px;}</style><script> $(function(){ $("a.preview").preview(); //页面加载完后执行 });</script><body> <p class="page"> <p class="imgbox"> <a class="preview" href="./img/cool_couple_dark.jpg" title="cool cuple"><img src="./img/cool_couple_dark.jpg" alt="cool couple"></a> <a class="preview" href="./img/cool_couple_dark.jpg" title="cool cuple"><img src="./img/cool_couple_dark.jpg" alt="cool couple"></a> <a class="preview" href="./img/cool_couple_dark.jpg" title="cool cuple"><img src="./img/cool_couple_dark.jpg" alt="cool couple"></a> <a class="preview" href="./img/cool_couple_dark.jpg" title="cool cuple"><img src="./img/cool_couple_dark.jpg" alt="cool couple"></a> <a class="preview" href="./img/cool_couple_dark.jpg" title="cool cuple">查看</a> </p> </p></body>
jquery-imgpreview.js
(function($){ $.fn.preview=function () { $(this).each(function () { var xOffset = 10; var yOffset = 20; var screenW =$(window).width(); $(this).hover(function (e) { var imgsrc= $(this).attr("href") if(/.png$|.gif$|.jpg$|.bmp$/.test(imgsrc)){ $('body').append("<p id='preview'><p><img src='"+imgsrc+"' /><p>"+$(this).attr('title')+"</p></p></p>"); $('#preview').css({ width:'325px', position:'absolute', left:e.pageX+xOffset+'px', top:e.pageY+yOffset+'px', backgroundColor:"#eeeeee", padding:"4px", border:"1px solid #f3f3f3", zIndex:1000 }), $('#preview > p > img').css({ width:'100%', height:'100%' }) } },function () { $('#preview').remove(); }).mousemove(function(e){ $("#preview").css("top",e.pageY+ "px") if(e.pageX < screenW/2){ $("#preview").css("left",(e.pageX + xOffset) + "px").css("right","auto"); }else{ $("#preview").css("right",(screenW - e.pageX + xOffset) + "px").css("left","auto"); } }); }) }})(jQuery)
以上是jq查看預覽圖實例分享的詳細內容。更多資訊請關注PHP中文網其他相關文章!