首頁 > web前端 > js教程 > 主體

jQuery滑鼠懸浮連結彈出跟隨圖片實例程式碼_javascript技巧

WBOY
發布: 2016-05-16 15:21:10
原創
1162 人瀏覽過

本文章介紹了一種比較常用的效果,那就是當滑鼠滑過連結的時候,能夠出現跟隨滑鼠指標移動的圖層,在實際應用中,一般是對於連結的一些說明文字或圖片等等等,下面是程式碼實例:

<!DOCTYPE html>
<html>
<head>
<meta charset="gb2312">
<title>脚本之家</title>
<style type="text/css">
body{
 margin:0;
 padding:40px;
 background:#fff;
 font:80% Arial, Helvetica, sans-serif;
 color:#555;
 line-height:180%;
}
a{
 text-decoration:none;
 color:#f30; 
}
p{
 clear:both;
 margin:0;
 padding:.5em 0;
}
img{border:none;}
#screenshot{
 position:absolute;
 border:1px solid #ccc;
 background:#333;
 padding:5px;
 display:none;
 color:#fff;
}
</style>
<script type="text/javascript" src="mytest/jQuery/jquery-1.8.3.js"></script>
<script type="text/javascript">
this.screenshotPreview=function(){ 
 xOffset = 10;
 yOffset = 30;
 $("a.screenshot").hover(function(e){
 this.t = this.title;
 var c = (this.t != "") &#63; "<br/>" + this.t : "";
 $("body").append("<p id='screenshot'><img src='"+this.rel+"' />"+c+"</p>");   
 $("#screenshot")
 .css("top",(e.pageY - xOffset) + "px")
 .css("left",(e.pageX + yOffset) + "px")
 .fadeIn("fast");  
 },
 function(){
 this.title = this.t; 
 $("#screenshot").remove();
 }); 
 $("a.screenshot").mousemove(function(e){
 $("#screenshot")
 .css("top",(e.pageY-xOffset)+"px")
 .css("left",(e.pageX+yOffset)+"px");
 }); 
};
$(document).ready(function(){
 screenshotPreview();
});
</script>
</head>
<body>
<a href="#" class="screenshot" title="蚂蚁部落" rel="mytest/demo/thesmall.jpg">蚂蚁部落</a>欢迎您
</body>
</html>
登入後複製

效果圖:

以上程式碼實現了我們的要求,以下簡單介紹一下實作過程:
程式碼註解:
1.this.screenshotPreview=function(){ },宣告一個函數用來實現跟隨效果,在本效果中,this其實是可以省略,它指向window。
2.xOffset=10,宣告一個變量,用來規定滑鼠指標距離彈出圖片的橫向距離。
3.yOffset=30,宣告一個變量,用來規定滑鼠指標距離彈出圖片的縱向距離。
4.$("a.screenshot").hover(function(e){},function(e){}),規定當滑鼠移到連結和離開連結所要執行的函數。
5.this.t = this.title將連結的title屬性值賦值給該屬性,這裡的this是指向屬性,這裡的this是指向屬性當前滑鼠懸浮的連結物件。
6.var c = (this.t != "") ? "
" + this.t : "",
如果this.t不為空,也就是存在title屬性值,那麼插入一個換行符號並且連接目前標題內容,否則將c設為空。
7.$("body").append("

jQuery滑鼠懸浮連結彈出跟隨圖片實例程式碼_javascript技巧"+ c +"

"),將圖片和相關說明加入body。
8.$("#screenshot").css("top",(e.pageY-xOffset)+"px").css("left",(e.pageX+yOffset)+" px").fadeIn("fast"),設定p元素的top和left屬性值,並且採用淡入效果展現。
9.this.title=this.t,將title內容賦值給this.title,其實不要這句話也沒有任何問題,有點多餘。
10.$("#screenshot").remove(),移出p元素。
11.$("a.screenshot").mousemove(function(e){}),用來設定當滑鼠指標移動時,圖片能夠跟隨。
12.$("#screenshot").css("top",(e.pageY-xOffset)+"px") .css("left",(e.pageX+yOffset)+" px"),設定p元素的top和left屬性值,能夠達到跟隨效果。

以上就是本文的全部內容,希望對大家的學習有所幫助。

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!