简单总结一下获取元素的一些方法,

可以通过jq选择器获取可以通过关系节点获取.

1.基本选择器

        符号                           说明

        $(‘#demo’)                 选择 id 为 demo 的元素

        $(‘.demo’)                  选择 class 为 demo 的所有元素

        $(‘div’)                       选择所有 div 标签元素

        $(‘.arr.arr-left’)           选择同时具有 arr 和 arr-left 类名的元素 

        $(‘*‘)                          选择所有标签元素

 2.层次选择器

符号           说明

空格           后代选择器

 >               子代选择器

+                紧邻选择器

~                所有兄弟选择器

3.属性选择器 

符号                                 说明

$(‘a[href]’)                        具有 href 属性的 a 标签

$(‘a[href=’baidu’]’)            href 属性为’baidu’的 a 标签

$(‘a[href!=’baidu’]’)           href 属性不为’baidu’的 a 标签,包括不具有 href 属性的 a 标签

$(‘a[href^=’www’]’)           href 属性以’www’开头的 a 标签

$(‘a[href$=’cn’]’)               href 属性以’cn’结尾的 a 标签

$(‘a[href*=’i’]’)                   href 属性包含’i’的 a 标签

$(‘a[href][title=’内容’]’)       具有 href 属性且 title 属性为’内容’的 a 标签

 例:

        html代码

    <a href="">空标签</a>
    <a href="www.baidu.com">百度</a>
    <a href="www.qq.com">腾讯qq</a>
    <a href="www.taobao.cn">淘宝</a>
    <a href="www.intern.com">inter</a>
    <a href="www.baidu.com" title="百度一下">百度一下</a>
    <a href="cesi.com" title='测试'>测试一下</a>

        js代码

console.log($(`a[href]`)); //获取a标签  带有href属性的
console.log($("a[href ='www.baidu.com']")) //获取a标签 并且href=www.baidu.com
console.log($("a[href !='www.baidu.com']")) //获取a标签  href 属性不等于www.baidu.com;
console.log($("a[href ^='w']")) //获取a标签  href属性为www开头
console.log($('a[href $="cn"]')) //获取a标签 href属性以cn结束
console.log($('a[href *="."]')) //获取a标签  href属性含有.;
console.log($('a[href="www.baidu.com"][title ="测试"]')) //获取a标签 同时具有的属性;

4.筛选选择器

 符号                 说明(index 从 0 开始)

:eq(index)          匹配一个给定索引值的元素

:gt(index)           匹配所有大于给定索引值的元素

:lt(index)            匹配所有小于给定索引值的元素

:odd                   匹配所有索引值为奇数的元素

:even                 匹配所有索引值为偶数的元素

:first                   获取匹配的第一个元素

:last                   获取匹配的最后一个元素 -->

例:

        html代码

    <ul>
        <li>0</li>
        <li>1</li>
        <li>2</li>
        <li>3</li>
        <li>4</li>
        <li>5</li>
        <li>6</li>
    </ul>

         js代码

    console.log($('li'))
    console.log($('li:eq(0)')) //获取指定索引 的元素
    console.log($('li:gt(2)')); // 获取比索引大的元素
    console.log($('li:lt(3)')); //获取比索引值小的元素
    console.log($('li:odd')); //获取索引值为奇数的元素 ,代表偶数行
    console.log($("li:even")) //获取索引值为偶数的元素,代表奇数行
    console.log($("li:first")) //获取元素 第一个
    console.log($("li:last")) //获取元素的最后一个;

 筛选关系节点:

eq(index)    获取当前 jQ 数组中下标为 index 的 jQ 对象

find(selector)    获取 后代 满足条件的

children(selector)   返回 满足条件的直系的子元素

parent() 返回 jQ 直系父节点

parends(selector)

prev 返回 jQ 对象上一个兄弟节点

prevAll  返回 jQ 对象的前面所有的兄弟节点

next 返回 jQ 对象下一个兄弟节点

nextAll  返回 jQ 对象后面所有的兄弟节点

siblings 返回当前 jQ 对象所有的兄弟节点

例:

        html代码

    <ul>
        <li>1</li>
        <li class='li2'>2</li>
        <li class="li3">3</li>
        <li class='li4'>4</li>
        <li>5</li>
    </ul>

    <div class="box" style="width: 100px;height:100px">
        <div class="box1">
            <p class="p">我是p标签</p>
            <p>我是p标签下的p标签</p>
        </div>
        <p>我是p标签</p>
    </div>

 

        js代码

console.log($('li'));
console.log($('li').eq(0));//获取索引为0 的元素

console.log($('.box').find('p').eq(0)); //获取后代选择的元素

console.log($('.box').children()) //获取直系子元素;
console.log($('.box').children('p')) //获取满足条件直系子元素;

console.log($('.p').parent()); //获取直系的父元素
console.log($('.p').parents())//获取所有祖先
console.log($('.p').parents('div')) //获取满足条件的祖先;

console.log($('.li3').prev()) //获取上一个元素
console.log($('.li3').next())//获取下一个元素

console.log($('.li3').prevAll())
console.log($('.li3').nextAll())

console.log($('.li3').siblings()) //获取所有兄弟元素

 表单选择器

        html代码

   <form action="">
       <input type="text" name="" id="" value="请输入姓名">
        <input type="password" name="" id="" placeholder="请输入密码">
        <input type="radio" name="sex" id="" checked >男
        <input type="radio" name="sex" id="" checked>女
        
        <p><input type="checkbox" name="" id="" checked> 篮球</p>
        <p><input type="checkbox" name="" id="" checked> 足球</p>
        <p><input type="checkbox" name="" id="" checked> 羽毛球</p>
        <p><input type="checkbox" name="" id="" >  乒乓球</p>
        <select name="" id="">
            <option value="">河南</option>
            <option value="">北京</option>
            <option value="">河北</option>
        </select>
    </form>

        js代码

    console.log($(":input")) //通过:  获取表单元素
    console.log($(':text')) //通过: 获取表单元素type 类型为text;
    console.log($(":password")) //通过 : 获取表单元素type类型为password;

    console.log($(':radio:checked')) //通过: 获取表单类型为radio 然后: 获取checked的元素

    console.log($(':checkbox:checked')) //获取 选中的元素;

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐