麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > JavaScript > 正文

JQuery中的事件及動畫用法實例

2019-11-20 13:19:24
字體:
來源:轉載
供稿:網友

本文實例講述了JQuery中的事件及動畫用法。分享給大家供大家參考。具體分析如下:

1.bind事件

復制代碼 代碼如下:
<script src="script/jquery-1.7.1.min.js"></script>
<script>
$(function () {
$("#divid h5.head").bind("click", function () {  //bind事件,其中包含三個參數,第一個為事件,第二個為事件
alert($(this).text());
});
$("#divid h5.content").css("display", "none");    //css方法就是可以動態設置標簽樣式
});
$(function () {
$("#btnid").bind("click", function () {
if (bool == true) {
$("#btnid .content").css("display", "none");
bool = false;
$(this).val("顯示");
}
else {
$("#btnid .content").css("display", "");
bool = true;
$(this).val("隱藏");
}
});
});
$(function () {
$("input[type=button]").bind("click", function () {  //內容的顯示與隱藏
var content = $("#divid .content");
if (content.is(":visible")) {
content.hide();
$(this).val("顯示");
}
else {
content.show();
$(this).val("隱藏");
}
});
});
</script>
<body>
<div id="divid">
<h5 class="head">Rocky?</h5>
<div class="content">就讓雨下下來 不用帶傘 讓一切完蛋 看被淋濕的心 多久才會曬干</div>
</div>
<input type="button" name="name" value="顯示 " id="btnid" />
</body>

在上面的操作中我們新學習了bind事件,而bind事件是三個參數,第一個參數是事件的名字,例如:click,dbclick,mouseover等,第二個參數是data,即傳遞過來的事件對象,第三個參數是一個方法,即用來處理處 理綁定的事件函數這就是我們的一個特殊的事件;另外在這里還舉例寫了一個動畫中的例子,即文本信息的顯示或者隱藏,在還沒有學習show()和 hide()之前我們一般是按照上面第一種方式來寫的,定義一個bool類型的變量即可,這樣寫起來還是很簡單的,但是在寫顯示隱藏時間處理按鈕上面還是 蠻蠻煩的,所以在學習了show()和hide()后就簡單許多了,就是直接可以隱藏和顯示。可以對比一下,顯然在代碼的處理上簡單啦。

2.toggle事件和事件冒泡

復制代碼 代碼如下:
<script>
$(function () {
$("input[type=button]").toggle(function () {    //toggle兩個參數都為事件,輪番調用
$(this).css("backgroundColor","red");
}, function () {
$(this).css("backgroundColor", "yellow");
});
});
$(function () {
$("div").each(function () {
$(this).bind("mouseup", function (e) {
alert(e.pageX);   //輸出鼠標的x方向的位置
alert(e.pageY);   //輸出鼠標的y方向的位置
alert(e.which);   //輸出鼠標的按鍵的選擇,1為鼠標左鍵,2為滾軸按鍵,3為鼠標右鍵
});
});
});
$(function () {
$("#txt").keydown(function () {
e.preventDefault();      //阻止a標簽鏈接
alert(e.keyCode);           //鍵盤獲取其ask碼
});
});
$(function () {
$("#ouuerdiv").click(function () {
alert($(this).text());
});
$("#div").click(function () {
alert($(this).text());
});
$("#innerdiv").click(function () {          //在這里是寫了一個事件的冒泡現象,組織冒泡可以使用preventDefault或者precentDefault
alert($(this).text());
});
})
</script>
<body>
<input type="button" name="btnname" value="按鈕" id="btn"/>
<div id="ouuerdiv"> 外部div<div id="div">中部div<div id="innerdiv">內部div</div></div></div>
<a id="a">百度</a>
<textarea id="txt" rows="5" cols="5">
</textarea>
</body>

Toggle事件:模擬鼠標點擊事件,當鼠標移動到元素上時觸發第一個事件,當鼠標離開元素時觸發第二個事件。兩個事件之間相互切換觸發;另外還要說下事 件冒泡,事件冒泡其實簡單的理解為:在一個頁面上可以有多個事件,也可以多個元素相應一個事件。像上面一樣假設頁面中存在兩個元素,其中一個div元素嵌 套在另一個div元素中并且都綁定了一個click事件,那么當你點擊內部中div元素時間,外部的div也會顯示,這就是事件冒泡。在這里需要注意的是都綁定了一個事件,容易想當然的認為僅僅的內部發生click事件。

3.移除事件和連續添加多個事件

復制代碼 代碼如下:
<script>
$(function () {
$("removeall").click(function () {     
$("#btn").unbind();                //實現移除事件
});
$("#btn").bind("click", function () {          //可以連續添加多個事件
$("#text").append("<p>我是第一個添加的事件</p>")
})
.bind("click", function () {
$("#text").append("<p>我是第二個添加的事件</p>")
})
.bind("click", function () {
$("#text").append("<p>我是第三個添加的事件</p>")
})
});
</script>
<body>
<button id="btn">單擊我吧</button><button id="removeall">刪除所有的事件</button>
<div id="text">div文本信息</div>
</body>

上面我們學習了bind事件,就是添加一個事件,而unbind就是移除事件,我們可以對比一下,嘿嘿,而針對連續添加多個事件其實就是當你添加玩一個事件后繼續.bind添加事件即可。

4.模擬事件

我們學習的上面的bind事件、click事件等一般都是通過單擊按鈕才能觸發的事件,但是有時間,需要通過模擬用戶操作,來達到單擊的效果,例如:在用戶進入也買年后就觸發click事件,而不需要用戶去單擊,那么我們就使用trigger()方法來完成模擬操作。

5.一些其他的事件

復制代碼 代碼如下:
<script>
$(function () {
$("#btn").click(function () {
//$("#div").hide(2000);        //在2秒內隱藏
//$("#div").show(2000);        //在2秒內顯示
//$("#div").fadeIn(2000);      //增強元素的不透明度,直至元素完全顯示
//$("#div").fadeOut(2000);     //降低元素的不透明度,直至元素完全消失
$("#btn").toggle(function () {
$("div").slideDown(2000);     //改變元素的高度,由上至下顯示
$(this).val("顯示")        
}, function () {
$("div").slideUp(2000);       //改變元素的高度,由下至上縮短隱藏
$(this).val("隱藏")
});
});
//$("#btn").click(function () {
//    $("div").fadeTo(600,0.2);       //fadeTo方法適用于在0.6s內透明度是0.2
//});
});
</script>
<body>
<div id="div" style="width:300px; height:300px;" >1234</div>
<input type="button" name="name" value="操作動畫" id="btn" />
</body>

動畫方法

6.多行文本框的應用-高度變化

復制代碼 代碼如下:
<script src="script/jquery-1.7.1.min.js"></script>
<style>
input:focus,textarea:focus {
border:1px solid #f00;
 
}
</style>
<script>
$(function () {
var comment = $("#comment");
$(".bigger").click(function () {
if (comment.height() < 500) {
comment.height($("#comment").height() + 100);  //在原有高度的基礎上增高100
}
});
$(".smaller").click(function () { 
if (comment.height() > 100) {
comment.height($("#comment").height() - 100);  //在原有高度的基礎上降低100
}
});
})
</script>
<body>
<form action="#" method="post" id="regform">
<div class="msg"><span class="bigger">放大</span><span class="smaller">縮小</span></div>
<div style="" data-mce-style="color: #800000;">"><textarea rows="8" cols="20" id="comment">海海海海</textarea></div>
</form>
</body>

上面的操作實現了點擊放大時間,textarea的高度變高即面積變大,當點擊縮小時間textarea的面積變小,即實現了動畫的效果。

7.復選框應用

復制代碼 代碼如下:
<script src="script/jquery-1.7.1.min.js"></script>
<script>
$(function () {
$("#checkall").bind("click", function () {
$(":checkbox").each(function () {
$(this).attr("checked", "checked");         //點擊按鈕時間需要全部選中
});
});
$("#checkno").bind("click", function () {
$(":checkbox").attr("checked", false);    //點擊按鈕時間需要全部不選中
});
$("#checkRev").bind("click", function () {
$(":checkbox").each(function () {
if ($(this).attr("checked") == "checked") {
$(this).attr("checked", false);
}
else {
$(this).attr("checked", true);   //點擊按鈕時間需要選中的清除,未選中的被選中
}
});
});
//或者:
$(this).attr("checked", !$(this).attr("checked"));
});
</script>
<body>
<form>你愛好的運動?<br />
<input type="checkbox" name="names" value="足球 "  />足球<br />
<input type="checkbox" name="names" value="籃球 " />籃球<br />
<input type="checkbox" name="names" value="排球 " />排球<br />
<input type="checkbox" name="names" value="羽毛球 " />羽毛球<br />
<input type="button" id="checkall" value="全選 " /><br />
<input type="button" id="checkno" value="全不選 " /><br />
<input type="button" id="checkRev" value="反選 " /><br />
<input type="button" name="send" value="提交" /><br />
</form>
</body>

在這里需要注意的是,判斷復選框選中或者不選中的狀態,必須通過控制元素的checked屬性來達到目的,如果屬性checked為true,說明被選中,如果為false,則說明未被選中。

8.下拉框的應用

復制代碼 代碼如下:
<script src="script/jquery-1.7.1.min.js"></script>
<script>
$(function () {
$("#add").click(function () {
var selectoption = $("#select1 option:selected");
selectoption.remove();
selectoption.appendTo('#select2');    //把選中的項添加到右邊的aelect框中
});
$("#addAll").bind("click",function () {
var options = $("#select1 option");
options.appendTo('#select2');
});
});
</script>
<body>
<div class="center">
<select multiple="multiple" id="select1" style="width: 100px; height: 160px">
<option value="1">選項1</option><option value="2">選項2</option> <option value="3">選項3</option>
<option value="4">選項4</option><option value="5">選項5</option><option value="6">選項6</option>
<option value="7">選項7</option><option value="8">選項8</option><option value="9">選項9</option>
</select>
<div>
<span id="add">添加到右邊</span>
<span id="addAll">全部添加到右邊</span>
</div>
</div>
<div class="center" style="float:right">
<select multiple="multiple" id="select2" style="width: 100px; height: 160px" >
</select>
</div>

上面的操作是實現了在在左邊點擊選擇的項,然后添加到右邊的框中,可以一個一個的添加,也可以全部一次性添加。

9.表格的應用

復制代碼 代碼如下:
<script src="script/jquery-1.7.1.min.js"></script>
<style>
.even {
 
}
.odd {
background-color: #ffffee;
}
</style>
<script>
$("#table tr:odd").addClass("odd");          //選取索引為奇數的行數
$("#table tr:even:not(:first)").addClass("even");   //選取索引為偶數的除了索引為0的行數
$("table tr").each(function () {
$(this).click(function () {
$(this).css("backgroundColor","red").siblings().css("backgroundColor","");
});
})
</script>
<body>
<table border="1" id="table">
<thead><tr><th>姓名</th><th>性別</th><th>暫住地</th></tr></thead><tbody>
<tr class="parent" id="row1"><td colspan="3">前臺設計組</td></tr>
<tr class="child1"><td>張三</td><td>男</td><td>浙江寧波</td></tr>
<tr class="child1"><td>李四</td><td>女</td><td>浙江杭州</td></tr>
<tr class="parent" id="row2"><td colspan="3">前臺開發組</td></tr>
<tr class="child2"><td>王五</td><td>男</td><td>湖南長沙</td></tr>
<tr class="child2"><td>趙六</td><td>男</td><td>湖南長沙</td></tr>
<tr class="parent" id="row3"><td colspan="3">后臺開發組</td></tr>
<tr class="child3"><td>孫七</td><td>男</td><td>湖南長沙</td></tr>
<tr class="child3"><td>周八</td><td>男</td><td>湖南長沙</td>
</tr>
</tbody>
</table>
</body>

希望本文所述對大家的jQuery程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 99r国产精品 | 宅男噜噜噜66一区二区 | 黄色网址你懂的 | 久草视频手机在线观看 | 毛片免费一区二区三区 | 美女黄视频在线观看 | 草莓福利视频在线观看 | 黄色大片网 | 91福利社在线 | 九九视频在线观看6 | 久久久中文| 在线播放免费人成毛片乱码 | 精品国产一区二区三区成人影院 | 日本一区二区三区视频在线 | 亚洲视屏在线观看 | 成人毛片网站 | 操皮视频 | 久久综合久久综合久久 | 欧美成人精品欧美一级 | 一区二区三区视频在线观看 | 操碰视频在线观看 | 黄色99视频 | 免费观看欧美一级片 | 日日草天天干 | 久久久久久久亚洲精品 | 少妇的肉体的满足毛片 | 午夜爱爱福利 | 一级毛片真人免费播放视频 | 今井夏帆av一区二区 | 精品久久久久久久久中文字幕 | 国产乱淫av| av国产免费| 毛片免费视频观看 | 欧美雌雄另类xxxxx | 激情视频导航 | 精品一区二区三区网站 | 亚洲国产精品久久久久婷婷老年 | 国产一区二区三区在线免费 | free台湾极品性hd | 欧美三级日本三级少妇99 | 国产精品视频一区二区三区四区五区 |