初识jQuery之jQuery方法(二)

1.jQuery方法之filter,not,has

filter : 过滤

not : filter的反义词

$('div').filter('.box').css('background','red');
//筛选出css为.box的div
$('div').filter('.box').css('background','red');
//筛选出css不是.box的div

has : 包含

看元素里面的元素,即内部

<script>
$(function(){
      
    $('div').has('span').css('background','red');
        //变红的为span
    $('div').has('.box').css('background','red');
        //变红的为css为box的span
    $('div').filter('.box').css('background','red');
        //变红的为div2
    
});
</script>
<body>
<div>div1<span class="box">span</span></div>
<div class="box">div2</div>
</body>

2.jQuery方法之next,prev,find,eq,index,attr

next:下一个节点

prev:上一个节点

<script>
$(function(){

    $('div').next().css('background','red');    
    //变红的为span
});
</script>
<body>
<div>div</div>
<span>span</span>
<p>p</p>
</body>

prev同理

find:找节点

eq:类似原生中的下标

<script>
$(function(){

    $('div').find('h2').css('background','red');
    //找到所有h2的节点
    $('div').find('h2').eq(1).css('background','red');
    //找到所有h2,且找到其中第二个节点
});
</script>
<body>
<div>
    <h3>h3</h3>
    <h2>h2</h2>
    <h3>h3</h3>
    <h3>h3</h3>
    <h2>h2</h2>
    <h2>h2</h2>
</div>
<h2>h2</h2>
</body>

index:索引就是当前元素在所有兄弟节点中的位置

<script>
$(function(){

    alert( $('#h').index() );  // 2
    
});
</script>
<body>
<div>
    <h3>h3</h3>
    <h2>h2</h2>
    <h3>h3</h3>
    <h3 id="h">h3</h3>
    <h2>h2</h2>
    <h2>h2</h2>
</div>
<h2>h2</h2>
</body>

attr:设置属性,可获取(已在上一篇讲过,详情请看上一篇)

3.jQuery方法之属性操作

addClass():添加class

removeClass():删除class

<script>
$(function(){

    $('div').addClass('box2 box4');
    //box1,box2,box4
    $('div').removeClass('box1');
    //box2,box4
});
</script>
<body>
<div class="box1 box2">div</div>
</body>

width():width

innerWidth():width + padding

outerWidth():width + padding + border

outerWidth(true) :width + padding + border + margin

<style>
div{ width:100px; height:100px; background:red; padding:10px; border:10px #000 solid; margin:10px;}
</style>
<script>
$(function(){

    alert( $('div').width() );  //width  100
    
    alert( $('div').innerWidth() );  //width + padding120
    
    alert( $('div').outerWidth() );  //width + padding + border130
    
    alert( $('div').outerWidth(true) );  //width + padding + border + margin
    //150
});
</script>
<body>
<div>div</div>
</body>

4.jQuery方法之Dom操作

insertBefore( ):剪切功能

insertAfter( );

appendTo( ):类似原生里的appendChild

prependTo( ):最开始的位置

<script>
$(function(){

    $('span').insertBefore( $('div') );
    //span在div之前
    $('div').insertAfter( $('span') );
    //和上面操作一样
    $('div').appendTo( $('span') );
    //sapn在div之前
    $('div').prependTo( $('span') );
    //div在span之里面
});
</script>
<body>
<div>div</div>
<span>span</span>
</body>

注意:后续操作变了,只针对于最前面的元素

$('span').insertBefore( $('div') ).css('background','red');
//span变红
$('div').before( $('span') ).css('background','red');
//div变红

5.jQuery方法之事件操作和scrolliop

remove:删除节点

on:加载事件

off:取消事件

<script>
$(function(){

    $('div').remove();
    //删除div
});
</script>
<body>
<div>div</div>
<span>span</span>
</body>
//加载事件
$('div').click(function(){
        alert(123);
    });
    
$('div').on('click',function(){
        alert(123);
    });
    
$('div').on('click mouseover',function(){
        alert(123);
    });
$('div').on('click mouseover',function(){
        alert(123);
        $('div').off('mouseover');
    });
//取消鼠标移入事件

scrollTop:纵向滚动条,获取滚动距离

$(function(){

    $(document).click(function(){
        
        alert( $(window).scrollTop() );  //滚动距离
        
    });
    
});

6.jQuery方法之事件细节

ev : event对象

ev.pageX(相对于文档) :

clientX(相对于可视区): 表示鼠标坐标

ev.which : keyCode,找键盘的键值

ev.preventDefault():阻止默认事件

ev.stopPropagation():阻止冒泡的操作

return false:阻止默认事件 + 阻止冒泡的操作

one():事件只执行一次

7.jQuery方法之位置操作

parent() : 获取父级

offsetParent() : 获取有定位的父级

<script>
$(function(){

    $('#div2').parent().css('background','blue');
    //div1变蓝
    $('#div2').offsetParent().css('background','blue');
        //当div1有定位时变蓝
});
</script>
<body>
<div id="div1">
    <div id="div2"></div>
</div>
</body>

val():获取元素的val值

size():获取一组元素的长度

alert( $('input').val() );  //获取
$('input').val(456);  //赋值
alert( $('li').size() );  //=4 像length
$('li').each(function(i,elem){   //一参:下标 二参 : 每个元素,类似for循环
        
        $(elem).html(i);
        
    });

8.jQuery方法之hover和简单动画

hover:参一移入,参二移出

hide:隐藏 (有运动效果)

show:显示

fade in:淡入 (可指定时间,默认为400ms)

fade out:淡出

slideup:向上卷起

slidedown:向下展开

fadeTo:参数一:时间;参数二:透明度的值

<script>
$(function(){

    $('#div1').hover(function(){
        
        $(this).css('background','blue');
        
        $('#div2').hide(3000);
        
        $('#div2').fadeOut(1000);  //默认400
        
        $('#div2').slideUp();
        
        $('#div2').fadeTo(1000,0.5);
        
    },function(){
        
        $(this).css('background','red');
        
        $('#div2').show(3000);
        
        $('#div2').fadeIn(1000);
        
        $('#div2').slideDown();
        
        $('#div2').fadeTo(1000,1);
        
    });

});
</script>
<body>
<div id="div1"></div>
<div id="div2"></div>
</body>
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,029评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,238评论 3 388
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 159,576评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,214评论 1 287
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,324评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,392评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,416评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,196评论 0 269
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,631评论 1 306
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,919评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,090评论 1 342
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,767评论 4 337
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,410评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,090评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,328评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,952评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,979评论 2 351

推荐阅读更多精彩内容