jQuery基礎教程筆記適合js新手第1/2頁

來源:互聯網
上載者:User

1, :eq()和nth-child()
看下面代碼:
<SCRIPT LANGUAGE="JavaScript">
$(function(){
$("#selected-plays > li:eq(1)").addClass("a");
//等價於 $("#selected-plays > li:nth-child(2)").addClass("a");

//注意:js數組是從 0 開始的,所以eq(1)是取第二個元素。
//而css選取器:nth-child()是從 1 開始的, 所以要選擇第二個元素, 得使用 :nth-child(2) ,而不是:nth-child(1)。
})
</SCRIPT>

2,:odd 和 :even
:odd : 奇數行
:even : 偶數行
新手經常會說,好像跟我們做的相反?
其實與 :eq() 選取器一樣, 下標都是從 0開始的,
也就是 表格的第一行 編號是 0 (偶數);
第二行 編號是 1 (奇數);以此類推。。。

3, $("tr:odd").addClass()
可以寫成 $("tr").filter(":odd").addClass()

4,$('td:contains("cssrain")') //取得 包含 字串 cssrain 的所有td

5,jquery 轉 dom :
$("td").get(0).tagName 或 $("td")[0].tagName

6,load():
jquery中的load()有2層意思,
第一層 意思 可以等價於 dom中 window.onload
第二層 意思 可以load(url )。

7:ready簡寫:
1;
$(document).ready(function(){
//do something
})
2;
$().ready(function(){
//do something
})
3;
$(function(){
//do something
})

8,事件冒泡:
正常的來說:點擊B 會觸發a的click。
如果我們不想觸發A,可以用stopPropagation() 阻止冒泡.
具體例子:
<div id="a">aaaaaaa
<div id="b">bbbbbbbb</div>
aaaaaa</div>
<script src="jquery.js" type="text/javascript"></script>
<SCRIPT LANGUAGE="JavaScript">
$(function(){
$('#a').click(function(){
alert("A")
})
$('#b').click(function(e){
alert("B")
e.stopPropagation();//阻止冒泡, 從來不輸出 “A" 。 可以去掉 ,試試對比效果。
})
})
</SCRIPT>

9, hide()show()會記住上一次的dipslay狀態
<script src="jquery.js" type="text/javascript"></script>
<SCRIPT LANGUAGE="JavaScript">
$(function(){
$('#test').toggle(function(){
$('#a').hide();//display : none ,記住display 為 inline
$('#b').hide();//display : none ,記住display 為 block
},function(){
$('#a').show(); //display : inline
$('#b').show(); //display : block
})
})
</SCRIPT>
<DIV id="a" style="display:inline;">a</div>
<DIV id="b" style="display:block;">b</div>
<input type="button" id="test" value="test" />

10, hide() show()加時間參數
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh-CN" lang="zh-CN">
<script src="jquery.js" type="text/javascript"></script>
<SCRIPT LANGUAGE="JavaScript">
$(function(){
$('#test').toggle(function(){
$('#a').hide(500);//display : none
$('#b').hide(500);//display : none
},function(){
$('#a').show(500); //display : inline
$('#b').show(500); //display : block
})
})
</SCRIPT>
<DIV id="a" style="display:inline;">a</div>
<DIV id="b" style="display:block;">b</div>
<input type="button" id="test" value="test" />

11,效果:
show(), hide()會同時修改多個樣式屬性 : 高度,寬度和不透明度。
fadeIn() fadeOut() : 不透明度
fadeTo() : 不透明度
slideDown() , slideUp() :高度

如果都不能滿意,只能用animate()了
animate()提供了更為強大的,複雜的效果。

12,animate() :
之前 .show('slow'); // slow代表的是0.6秒內同時改變高度,寬度和透明度 。 如果用時間表示是 600 ;=== .show(600);
那麼我們再來看看 animate()

animate({heigth : 'slow' ,width : 'slow' } , 'slow' )
這裡之所以可以 height : 'slow' 其實就跟 .show('slow') 類似,當然他前面規定了height 。。

13,做動畫之前 先確定位置。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh-CN" lang="zh-CN">
<script src="jquery.js" type="text/javascript"></script>
<SCRIPT LANGUAGE="JavaScript">
$(function(){
$('#a').css("position","absolute");//如果把這句去掉,動畫就沒了。
/*
在使用.animate之前,請先把位置確定,不管你是用的 absolute 還是relative
總之要設定其中的一種,因為所有的區塊層級元素預設是static。
其實是跟css有關。
*/
$('#test').click(function(){
$('#a').animate({ left : '300' } , 'slow' )
})
})
</SCRIPT>
<DIV id="a" >a</div>
<input type="button" id="test" value="test" />

14,width()和css('width')
<script src="jquery.js" type="text/javascript"></script>
<SCRIPT LANGUAGE="JavaScript">
$(function(){
$('#test').click(function(){
var t1 = $('#a').width();
var t2 = $('#a').css('width');
alert( t1 ); //200 , 不帶單位
alert( t2 ); //200px , 帶單位
alert( parseInt(t2) ) //200 , 不帶單位
})
})
</SCRIPT>
<DIV id="a" style="width:200px">a</div>
<input type="button" id="test" value="test" />

15:animate()做動畫效果時,動畫執行的順序。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh-CN" lang="zh-CN">
<script src="jquery.js" type="text/javascript"></script>
<SCRIPT LANGUAGE="JavaScript">
$(function(){
$('#test').click(function(){
$('#a').animate({left : "300px" } , "slow" )
.animate({ top : "300px" } , "slow" );
})
})
</SCRIPT>
<DIV id="a" style="position:absolute;width:10px;height:10px;">a</div>
<input type="button" id="test" value="test" />
//發生上面是按照順序來執行的。先改變left,然後再改變top

對比:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="zh-CN" lang="zh-CN">
<script src="http://www.cssrain.cn/demo/JQuery+API/jquery-1[1].2.1.pack.js" type="text/javascript"></script>
<SCRIPT LANGUAGE="JavaScript">
$(function(){
$('#test').click(function(){
$('#a').animate({left : "300px" , top : "300px"} , "slow" )
})
})
</SCRIPT>
<DIV id="a" style="position:absolute;width:10px;height:10px;">a</div>
<input type="button" id="test" value="test" />
//發生上面是一起執行的,也就是 left和top 一起改變。

區別知道了吧。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.