zoukankan      html  css  js  c++  java
  • JavaScript(12):jQuery(1)

        1.jQuery中文文档网址

        http://jquery.cuishifeng.cn/


        2.jQuery选择器($符号相当于jquery)

        (1)id选择器          $('#id')

        (2)class选择器        $(".classname")

        (3)标签选择器            $('tagname')

        (4)组合选择器

    <div id="i1"></div>
    <a></a>
    <div>
        <span class="c2"></span>
    </div>
    <script>
        var tag=$("a,.c2,#i10")        //获取所有a标签、所有类名为'c2'的标签、id为'i1'的标签
    </script>
        (5)层级选择器
    $('#i1 a');        //获取id='i1'标签下的子子孙孙标签中所有的<a>标签
    $('#i1>a');        //只获取id='i1'标签下的子标签中所有的<a>标签
        (6)基本筛选器
    <ul>
        <li>list item 1</li>
        <li>list item 2</li>
        <li>list item 3</li>
        <li>list item 4</li>
        <li>list item 5</li>
    </ul>
    <script>
        $('li:first');    //获取所有<li>标签中的第一个<li>标签
        $('li:last');    //获取所有<li>标签中的最后一个<li>标签
        $('li:eq(3)');    //获取所有<li>标签中的索引为3的<li>标签(从0开始数)
    </script>
        (7)属性选择器
    <div class="text"></div>
    <input type="text" />
    <input type="text" /> 
    <input type="button" />
    <script>
        $('[type]');        //获取所有拥有type属性的标签
        $('input[type="button"]');        //获取所有<input>标签中type属性值为'button'的标签
    </script>
        (8)表单选择器
    $(':text');        //获取所有文本类标签
    $(':chexbox');     //获取所有复选框

        3.对于复选框的jQuery操作
    $('#tb:checkbox').prop('checked');        //获取id="tb"标签范围内所有复选框是否被勾选的情况
    $('#tb:checkbox').prop('checked',true);    //将对应的复选框全部设置为被勾选    

        4.jQuery循环方式
    $('#tb:checkbox').each(function(k){
        //k表示当前索引,该匿名函数中也可以不设置参数
        $('this')    //获取当前循环中的元素
    })

        4.三元运算符
    var v = x>y?3:4;        //若x>y,则v=3;否则v=4

        5.筛选器
    <div>
        <a>asdf</a>
        <a>asafd</a>
        <a>ghkj</a>
        <a id="i1">
            <span>hahahah</span>
        </a>
        <a id="i2">hbb</a>
        <a>ftf</a>
    </div>
    <script>
        $('#i1').next();        //获取id='i1'的标签的下一个标签
        $('#i1').nextAll();        //获取id='i1'的标签下面的所有兄弟标签
        $('#i1').nextUntil('#i2');        //获取id='i1'的标签下面的所有兄弟标签直到id='i2'的标签处
    
        $('#i1').prev();        //获取id='i1'的标签的上一个兄弟标签
        $('#i1').prevAll();        //获取id='i1'的标签的上面所有的兄弟标签
        $('#i1').prevUntil('#i2')        //获取id='i1'的标签的上面的所有兄弟标签直到id='i2'的标签处
    
        $('#i1').parent();        //获取id='i1'的标签的父标签
        $('#i1').parents();        //获取id='i1'的标签的所有父祖辈标签
        $('#i1').parentsUntil('#i3');        //获取id='i1'的标签的所有父祖辈标签直到id='i3'的标签处
    
        $('#i1').children();        //获取id='i1'的标签的所有子标签
        $('#i1').siblings();        //获取id='i1'的标签的所有兄弟标签
    
        $("#i1").find('span');        //获取id='i1'的标签范围下的所有<span>标签
        $('li:eq(1)');        //获取所有<li>标签中的索引为1的<li>标签
        $('li').eq(1);        //获取所有<li>标签中的索引为1的<li>标签
        $('li').first();        //获取所有<li>标签中的第一个<li>标签
        $('li').last();        //获取所有<li>标签中的最后一个<li>标签
    
        $('#i1').hasClass('haha');        //判断id='i1'的标签类的值是否为'haha'。若为,则返回true;否则返回false。
    </script>  
    

        6.文本操作(JS的内容,非jQuery)
    $('#i1').text()        //获取id='i1'的标签的文本内容
    $('#i1').text('<a>1</a>')    //对相应标签的文本内容进行重置,注意此处设置的‘<a>’与‘</a>’只被当做文本内容进行处理
    
    $('#i1').html()    //虽然它获取的仅是id='i1'的标签的文本内容,但它可以对整个标签进行重置
    $('#i1').html('<div>1</div>')    //对相应标签进行整个标签的重置,此处的‘<div>’与‘</div>’被当做标签处理
    
    $('#i4').val()        //获取id='i4'的标签的value值
    $('#i4').val('666')        //将id='i4'的标签的value值重置为'666'
    
    $('#i1').index()        //获取id='i1'的标签相对于兄弟标签的索引值

        7.样式操作

    $('#i1').addClass('wwww');        //对id='i1'的标签添加'wwww'的类名
    $('#i1').removeClass('wwww');        //移除id='i1'的标签中'wwww'的类名
    $('#i1').toggleClass('wwww');        //若id='i1'的标签中的类名不存在'wwww',则添加该类名;若存在,则移除该类名
    <script>
    $('#i1').click(function(){
    //    if($('.c1').hasClass('hide')){
    //       $('.c1').removeClass('hide');
    //    }else{
    //       $('.c1').addClass('hide');
    //    }
        $('.c1').toggleClass('hide');    //这一条语句相当于被注释掉的整个if结构的作用
    })
    </script>
    $(s).css('position','relative');
    //$(s):将DOM对象转换为jQuery对象。然后设置相对定位,相对于原本位置的定位
    $(s).css('color','red');        //设置字体颜色
    $(s).css('fontSize',15+'px');        //设置字体大小
    $(s).css('left',10+'px');        //设置离左边为15px
    $(s).css('bottom',2+'px');        //设置离下边为2px
    $(s).css('opacity',0.7);        //设置内容透明度为0.7

        8.属性操作(多用于设置自定义属性)

    $('#i1').attr('id');        //获取id='i1'的标签的id属性
    $('#i1').attr('id','reset');        //将id='i1'的标签的id值重置为'reset'
    $('#i1').removeAttr('id');        //移除id='i1'的标签的id属性

        9.    文档处理

    $('#i1').append('<span>hahha</span>');        //在id='i1'的标签的文本内容末尾追加HTML标记(也可以追加文本内容)        
    $('#i1').prepend('<span>hhah</span>')        //在id='i1'的标签的文本内容前面追加HTML标记(也可以追加文本内容)
    $('#i1').after(content)        //在相应标签后面追加内容,其内容可以是HTML标记、DOM对象、jQuery对象
    $('#i1').before(content)        //用法和after相反
    
    $('#i1').remove();        //移除整个标签
    $('#i1').empty();        //对相应标签的文本内容进行清空
    
    var c = $('#i1').clone();        //对相应标签进行复制,并将复制品传递给变量c;
    

        10.位置获取

    $(window).scrollTop();        //获取当前页面窗口滚动轮的位置(单位:px)
    $('div').scrollTop();        //获取<div>标签所属窗口滚动轮的位置(亦可进行滚动轮的位置设置)
    $(window).scrollTop(256);        //将当前页面窗口滚动轮的位置设置在256px
    
    scrollLeft([val]);        //与scrollTop用法类似,只是scrollTop是针对纵轴滚动条,而scrollLeft是针对横轴滚动条的
    
    $("i1").offset().left;        //获取相应标签在页面中的横轴坐标    
    $('i1').offset().right;        //获取相应标签在页面中的纵轴坐标
    
    $('i1').position().left;        //获取相应标签相对于父标签偏移的横轴位置
    $('i1').position().right;        //获取相对于父标签偏移的纵轴位置
    
    $('i1').height();        //获取相应标签的高度(含边框)(单位:px)
    $('i1').height(20px);        //将相应标签的高度重置为20px
    $('i1').innerHeight();        //获取相应标签的内部高度(不含边框)
    $('i1').outerHeight();        //参数默认为false,此时相当于height()
    $('i1').outerHeight(true);        //将参数设为true时,获取的高度包括外边距

        11.绑定方式

        (1)DOM的绑定方式参见JavaScript笔记(10);

        (2)jQuery绑定方式

    $('.c1').click(function(){        //绑定点击事件
        //函数体
    });        
    
    $('.c1').bind('click',function(){        //对相应标签绑定一个事件
        //函数体
    });
    $('.c1').unbind('click',function(){        //对相应标签解绑一个事件
        //函数体
    });
    
    $('.c1').delegate('a','click',function(){        //对相应的<a>标签绑定一个事件
        //函数体
    });
    $('.c1').undelegate('a','click',function(){        //删除相应的<a>标签绑定的一个事件
        //函数体
    });
    
    $('.c1').on('click'.function(){        //对相应标签绑定一个事件
        //函数体
    })
    $('.c1').off('click',function(){        //删除相应标签的一个事件
        //函数体
    })


        12.自执行函数,页面加载完后自动执行

    $(function(){    //自执行函数,页面加载完后自动执行,
        //函数体,此处可以内嵌函数
    })
    
    //用自执行函数来封装局部变量,避免与其他JS文件冲突
    (function(arg){
        var status = 1;    //    封装变量
        arg.extend(...);       //由于实参为jQuery,则该句等价于jQuery.extend(...) 
    })(jQuery)    //作为实参被传入函数体中


        13.jQuery的扩展方法

    <script>
        $.extend({    //第一种扩展方式
            'chong':function(){
                return 'hengheng';
            }
        });
        var v = $.chong();    //可以直接调用扩展函数
        alert(v)    
    
        $.fn.extend({    //第二种扩展方式
            'dan':function(){
                return 'haha';
            }
        })
        var v =$('#i1').dan();    //必须以标签为对象使用函数,这也就是两种扩展方式不同的地方。
        alert(v);
    </script>


        14.jQuery对象与JS对象之间的转换

    jQuery对象[0]    =====>    DOM对象
    DOM对象          =====>    $(DOM对象)

        15.返回值决定是否跳转

    <a onclick="return ClickOn()"  href="http://www.oldboyedu.com">走你</a>
    <script src="jquery-1.12.4.js"></script>
    <script>
        function ClickOn() {
           alert(123);
           return true;
    //     若返回的是真值,则跳转发生;若返回的是假值,则跳转不发生。该情况也适用于form表单提交中。
        }
    </script>

  • 相关阅读:
    软件工程二人组队开发第一周
    软件工程第五周
    这学期的目标
    软件工程第四周的总结
    二维数组的最大子数组和 时间复杂度:O(n的四次方)
    10.tesseract
    mysql存储过程和函数
    mysql触发器
    9.selenium
    mysql练习
  • 原文地址:https://www.cnblogs.com/wangchongzhangdan/p/9409625.html
Copyright © 2011-2022 走看看