這篇文章主要介紹了JQuery鼠標移到小圖顯示大圖效果的方法,涉及jQuery鼠標事件與圖形操作技巧,需要的朋友可以參考下
本文實例講述了JQuery鼠標移到小圖顯示大圖效果的方法。分享給大家供大家參考。具體分析如下:
這里的顯示大圖功能類似上一篇《JQuery實現超鏈接鼠標提示效果的方法》,稍微修改一下代碼,就可以做出一個圖片的提示效果。
參考前面的超鏈接提示效果的代碼,只需要將創建的div元素的代碼改為:
- //創建 div 元素 圖片提示
- var tooltip = "<div id="tooltip"><img src=""+ this.href +"" alt="預覽圖"><//div>";
- </div>
當鼠標滑過圖片后,顯示就會有大圖提示效果。為了使效果更為人性化,還需要為圖片增加說明文字,即提示出來的大圖片下面出現圖片相應的介紹文字。
可以根據超鏈接的title屬性值來獲得圖片相應的介紹文字,JQuery代碼如下:
- this.myTitle = this.title;
- this.title = "";
- var imgTitle = this.myTitle? "<br />" + this.myTitle : "";
然后將它追加到div元素中,代碼如下:
- // 創建 div 元素
- var tooltip = "<div id='tooltip'><img src='"+ this.href +"' alt='產品預覽圖'/>"+imgTitle+"<//div>";
在判斷this.myTitle是否為""時,使用了三元運算。三元運算結構為:Boolean? 值1 : 值2。它的第1個參數必須為布爾值。當然三元運算也可以用“if(){ }else{ }”代替,例如:
- var imgTitle;
- if (this.myTitle) {
- imgTitle = "<br />" + this.myTitle;
- } else {
- imgTitle = "";
- }
這樣,圖片提示效果就完成了,當鼠標滑過圖片時,圖片會出現預覽的大圖,大圖下面還會有介紹文字。
本例完整代碼如下:
- <script type="text/javascript">
- //<![CDATA[
- $(function(){
- var x = 10;
- var y = 20;
- $("a.tooltip").mouseover(function(e){
- this.myTitle = this.title;
- this.title = "";
- var imgTitle = this.myTitle? "<br/>" + this.myTitle : "";
- var tooltip = "<div id='tooltip'><img src='"+ this.href +"' alt='預覽圖'/>"+imgTitle+"<//div>";
- //創建 div 元素
- $("body").append(tooltip);
- //把它追加到文檔中
- $("#tooltip")
- .css({
- "top": (e.pageY+y) + "px",
- "left": (e.pageX+x) + "px"
- }).show("fast"); //設置x坐標和y坐標,并且顯示
- }).mouseout(function(){
- this.title = this.myTitle;
- $("#tooltip").remove(); //移除
- }).mousemove(function(e){
- $("#tooltip")
- .css({
- "top": (e.pageY+y) + "px",
- "left": (e.pageX+x) + "px"
- });
- });
- })
- //]]>
- </script>
希望本文所述對大家的jQuery程序設計有所幫助。
新聞熱點
疑難解答
圖片精選