国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

鋒利的jQuery 要點歸納(三) jQuery中的事件和動畫(下:動畫篇)

2019-11-21 00:38:41
字體:
來源:轉載
供稿:網友
二、動畫
1 show()方法和hide()方法
復制代碼 代碼如下:

$("selector").show()
從display:none還原元素默認或已設置的display屬性
$("selector").hide()
設置元素的display樣式為none,等于$("selector").css("display","none")

(注:傳入參數后,.show()和.hide()方法同時動畫改變元素的width,height和透明屬性;傳入參數控制顯隱速度,單位毫秒,如.show(600),也可傳入fast,normal,slow,fast為200毫秒,normal為400毫秒,slow為600毫秒)
2 fadeIn()方法和fadeOut()方法
復制代碼 代碼如下:

$("selector").fadeIn()
控制透明度在指定時間內從display:none提高至完全顯示
$("selector").fadeOut()
控制透明度在指定時間內降低至display:none;

3 slideUp()方法和slideDown()方法
復制代碼 代碼如下:

$("selector").slideUp()
控制元素高度在指定時間內從下到上縮短至display:none;
$("selector").slideDown()
控制元素高度在指定時間內從display:none延伸至完整高度

4 自定義動畫方法animate()
復制代碼 代碼如下:

$("selector").animate(params,speed,callback);
params:一個包含樣式屬性及值的映射,比如{property1:"value1",property2:"value2",...}
speed:速度參數,可選
callback:在動畫完成時執行的參數(即回調函數),可選

常見的動畫例子
復制代碼 代碼如下:

<script>
//自定義動畫的例子
$(function(){
$("selector").click(function(){
$(this).animate({left:"500px"},3000); //selector在3秒內向右移動500px
});
})
</script>

復制代碼 代碼如下:

<script>
//累加、累減動畫的例子
$(function(){
$("selector").click(function(){
$(this).animate({left:"+=500px"},3000); //連續觸發click事件時,在當前位置累加500px
});
})
</script>
<script>
//多重動畫的例子
$(function(){
$("selector").click(function(){
$(this).animate({left:"500px",top:"300px",height:"+=100px"},3000); //向右下30度方向運動,同時增加高度
});
})
</script>
<script>
//按順序執行多個動畫的例子
$(function(){
$("selector").click(function(){
$(this).animate({left:"500px"},3000).animate({top:"300px"},3000); //動畫隊列
});
})
</script>

5 動畫回調函數
因css()方法不會加入動畫隊列中,則會馬上執行。如若要在動畫最后改變selector的css,需要利用回調函數
例:
復制代碼 代碼如下:

<script>
$("selector").click(function(){
$(this).animate({property1:"value1"},time).animate({property2:"value2"},time,function(){
$(this).css("property3","value3"); //css()方法利用回調函數加入動畫隊列
});
})
</script>

(注:動畫回調函數適用于jQuery所有的動畫效果方法)
6 停止動畫和判斷是否處于動畫狀態
$("selector").stop()
結束當前動畫,如隊列中存在下一個動畫則立即執行下一個動畫,格式$("selector").stop([clearQueue][,gotoEnd])
切換動畫的例子:
復制代碼 代碼如下:

<script>
$("selector").hover(function(){
$(this).stop().animate();
},function(){
$(this).stop().animate();
})
</script>

clearQueue參數設置為true時,將清空當前元素接下來尚未執行完的動畫隊列
例:
復制代碼 代碼如下:

<script>
$("selector").hover(function(){
$(this).stop(true).animate().animate() //如此時觸發光標移出事件,直接跳過后面的動畫隊列,避免執行本隊列第二個動畫
},function(){
$(this).stop(true).animate().animate()
})
</script>

gotoEnd參數設置為true時,可將正在執行的動畫直接到達結束時刻的狀態
is(":animated")
判斷元素是否處于動畫狀態,可用于防止動畫累積
例:
復制代碼 代碼如下:

<script>
if(!$("selector").is(":animated")){ //判斷元素是否正處于動畫狀態
//如果當前沒有進行動畫,則添加新動畫
}
</script>

7 其他動畫方法
3個專門用于交互的動畫方法:toggle(speed,[callback]); slideToggle(speed,[callback]); fadeTo(speed,opacity,[callback])
復制代碼 代碼如下:

$("selector").toggle()
切換元素的可見狀態,如元素隱藏則切換為可見,反之亦然
$("selector").slideToggle()
通過高度變化來切換元素的可見性
$("selector").fadeTo()
把元素的不透明度以漸進方式調整到指定的值,如$("selector").fadeTo(600,0.2);以600毫秒速度將內容調整到20%透明度

8 動畫方法概括
復制代碼 代碼如下:

toggle()用來代替hide()和show()
slideToggle()用來代替slideUp()和slideDown()
animate()可代替所有動畫方法
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 天等县| 营山县| 读书| 临朐县| 贡觉县| 洛南县| 麟游县| 安丘市| 贺兰县| 融水| 白城市| 肃宁县| 沙河市| 左贡县| 永丰县| 黄浦区| 资兴市| 古蔺县| 闽清县| 双桥区| 彭泽县| 弋阳县| 阳原县| 浦县| 房山区| 黔江区| 巧家县| 祁连县| 沁源县| 克东县| 嘉定区| 巴楚县| 百色市| 寿光市| 兴海县| 兴国县| 兴宁市| 小金县| 潞西市| 太保市| 南和县|