jQuery進階

1. jQuery特殊效果

fadeIn() 淡入

    $btn.click(function(){

        $('#div1').fadeIn(1000,'swing',function(){
            alert('done!');
        });

    });

fadeOut() 淡出
fadeToggle() 切換淡入淡出
hide() 隱藏元素
show() 顯示元素
toggle() 切換元素的可見狀態(tài)
slideDown() 向下展開
slideUp() 向上卷起
slideToggle() 依次展開或卷起某個元素

2.jquery鏈式調(diào)用

jquery對象的方法會在執(zhí)行完后返回這個jquery對象,所以jquery對象的方法可以連起來寫:

$('#div1') // id為div1的元素
.children('ul') //該元素下面的ul子元素
.slideDown('fast') //高度從零變到實際高度來顯示ul元素
.parent()  //跳到ul的父元素,也就是id為div1的元素
.siblings()  //跳到div1元素平級的所有兄弟元素
.children('ul') //這些兄弟元素中的ul子元素
.slideUp('fast');  //高度實際高度變換到零來隱藏ul元素

3. jquery屬性操作

1、html() 取出或設(shè)置html內(nèi)容
// 取出html內(nèi)容
var $htm = $('#div1').html();

// 設(shè)置html內(nèi)容
$('#div1').html('<span>添加文字</span>');

2、prop() 取出或設(shè)置某個屬性的值
// 取出圖片的地址
var $src = $('#img1').prop('src');

// 設(shè)置圖片的地址和alt屬性
$('#img1').prop({src: "test.jpg", alt: "Test Image" });

4. jquery循環(huán)

對jquery選擇的對象集合分別進行操作,需要用到j(luò)query循環(huán)操作,此時可以用對象上的each方法:

$(function(){
    $('.list li').each(function(){
        $(this).html( $(this).index() );
    })
})
......
<ul class="list">
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
</ul>

5. jquery事件

事件函數(shù)列表:
blur() 元素失去焦點
focus() 元素獲得焦點
click() 鼠標(biāo)單擊
mouseover() 鼠標(biāo)進入(進入子元素也觸發(fā))
mouseout() 鼠標(biāo)離開(離開子元素也觸發(fā))
mouseenter() 鼠標(biāo)進入(進入子元素不觸發(fā))
mouseleave() 鼠標(biāo)離開(離開子元素不觸發(fā))
hover() 同時為mouseenter和mouseleave事件指定處理函數(shù)
ready() DOM加載完成
submit() 用戶遞交表單

6. 表單驗證

  • 正則表達式的寫法:
    var re=new RegExp('規(guī)則', '可選參數(shù)');
    var re=/規(guī)則/參數(shù);

  • 規(guī)則中的字符
    1)普通字符匹配:
    如:/a/ 匹配字符 ‘a(chǎn)’,/a,b/ 匹配字符 ‘a(chǎn),b’
    2)轉(zhuǎn)義字符匹配:
    \d 匹配一個數(shù)字,即0-9
    \D 匹配一個非數(shù)字,即除了0-9
    \w 匹配一個單詞字符(字母、數(shù)字、下劃線)
    \W 匹配任何非單詞字符。等價于[^A-Za-z0-9_]
    \s 匹配一個空白符
    \S 匹配一個非空白符
    \b 匹配單詞邊界
    \B 匹配非單詞邊界
    . 匹配一個任意字符

var sTr01 = '123456asdf';
var re01 = /\d+/;
//匹配純數(shù)字字符串
var re02 = /^\d+$/;
alert(re01.test(sTr01)); //彈出true
alert(re02.test(sTr01)); //彈出false
  • 量詞:對左邊的匹配字符定義個數(shù)
    ? 出現(xiàn)零次或一次(最多出現(xiàn)一次)
    + 出現(xiàn)一次或多次(至少出現(xiàn)一次)
    * 出現(xiàn)零次或多次(任意次)
    {n} 出現(xiàn)n次
    {n,m} 出現(xiàn)n到m次
    {n,} 至少出現(xiàn)n次

  • 任意一個或者范圍
    [abc123] : 匹配‘a(chǎn)bc123’中的任意一個字符
    [a-z0-9] : 匹配a到z或者0到9中的任意一個字符

  • 限制開頭結(jié)尾
    ^ 以緊挨的元素開頭
    $ 以緊挨的元素結(jié)尾

  • 修飾參數(shù):
    g: global,全文搜索,默認搜索到第一個結(jié)果即停止
    i: ingore case,忽略大小寫,默認大小寫敏感

  • 常用函數(shù)
    test
    用法:正則.test(字符串) 匹配成功,就返回真,否則就返回假

  • 正則默認規(guī)則
    匹配成功就結(jié)束,不會繼續(xù)匹配,區(qū)分大小寫

  • 常用正則規(guī)則

//用戶名驗證:(數(shù)字字母或下劃線6到20位)
var reUser = /^\w{6,20}$/;
//郵箱驗證:        
var reMail = /^[a-z0-9][\w\.\-]*@[a-z0-9\-]+(\.[a-z]{2,5}){1,2}$/i;
//密碼驗證:
var rePass = /^[\w!@#$%^&*]{6,20}$/;
//手機號碼驗證:
var rePhone = /^1[34578]\d{9}$/;
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容