专栏首页前端资源利用jQuery not()方法选取除某个元素外的所有元素

利用jQuery not()方法选取除某个元素外的所有元素

日常的工作中可能会用到,选取处某个或者某些元素外的所有元素。

这时我们可以使用 jQuery 遍历中的 not() 方法来排除某些元素,例如根据元素的 #id ,.class 等排除,代码如下:

$("div.content *").not(".keep");

表示 .content 类的 div 下除 .keep 类以外的所有元素;

另外,注意这里的 * 表示所有元素。

示例:

HTML

<div class="box">
    <span>点击按钮删除下面绿色框中所有不是keep类的元素,keep类的元素用红色区分。</span>
    <div class="content">
        <input type="checkbox" name="item"><span>萝卜</span>
        <input type="checkbox" name="item"><span>青菜</span>
        <input type="checkbox" name="item" class="keep"><span class="keep">小葱</span>
        <input type="checkbox" name="item" class="keep"><span class="keep">豆腐</span>
        <input type="checkbox" name="item"><span>土豆</span>
        <input type="checkbox" name="item"><span>茄子</span>
        <input type="text" value="我也不是keep类的">
    </div>       
    <input type="button" value="删除">
</div>

CSS

.box{
    width:300px;
    height:200px;
    padding:10px 20px;
}
.box>span{
    color:#999;
}
.keep{
    color:red;
}
.content{
    width:250px;
    height:100px;
    margin:10px 0;
    border:1px solid green;
}
input[type='button']{
    width:200px;
    height:35px;
    margin:10px;
    border:2px solid #ebbcbe;
}

jQuery

$(function(){
    $("input:button").click(function() {
        $("div.content *").not(".keep").each(function() { // "*"表示div.content下的所有元素
            $(this).remove();
        });
    });
})

补充说明:

* 的用法主要有两种:

1、通配符:代表多有元素。

比如:.container * 表示  .container 下的所以元素。

2、CSS选择器内以 * 星号开头的属性:

在CSS选择器内星号 + CSS 属性,一般区别 IE6 和 IE8 、IE6 和 FF,IE7 和 IE8,IE7 和 FF 浏览器之间属性 CSS HACK。代码如下:

.cont{
    border:1px solid #000;
    width:220px;
    *width:300px;
}

我们设置了两个宽度,一个为 220px ,一个带星号的宽度为 300px。通过各大浏览器测试对比,我们会发现在 IE6 和 IE7 中宽度为 300px ,而在 IE8 及以上 MSIE 版本、谷歌浏览器、火狐(FF)浏览器却显示为 220px 宽度。

大家自己可以测试测试看看是否与描述效果相同。

注意:这里属于星号CSS属性放置前后位置。

声明:本文由w3h5原创,转载请注明出处:《利用jQuery not()方法选取除某个元素外的所有元素》 https://www.w3h5.com/post/439.html

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • input[type=file]去掉“未选择任何文件”及样式改进

    input 标签的 file 属性,在没有选择文件的情况下,默认显示一条文字“未选择任何文件”。

    德顺
  • 手机版银行信用卡审核进度页面(附源码)

    今天写了一个银行/信用卡/贷款审核进度的页面,除背景和 logo 之外,均使用 HTML+CSS 编写。

    德顺
  • 纯CSS改写radio和checkbox,单选框、复选框样式优化

    CSS: 将单选框或者复选框隐藏,在其后面写一个 span 利用 CSS 的相邻兄弟选择器  input + span 选中它,对它的样式进行美化。

    德顺
  • JS-点和中括号

    xing.org1^
  • 第31天:动态生成节点-京东轮播图创建

    一、获取节点属性 getAttribute()通过这个方法可以得到某些元素的某些属性 alert(demo.getAttribute("class"));

    半指温柔乐
  • 无人车创业正驶入分水岭

    量子位
  • Spring AMQP 发送消息到 RabbitMQ 收到 x-queue-type 错误

    在使用 Spring AMQP 发送消息到 RabbitMQ 的时候收到错误信息:

    HoneyMoose
  • Spring AMQP 发送消息到 RabbitMQ 收到 x-queue-type 错误

    在使用 Spring AMQP 发送消息到 RabbitMQ 的时候收到错误信息:

    HoneyMoose
  • 微信扫码登录实战(附代码)

    导读: 由于微信端流量比较足,所以扫码登录系统功能也受到了很多系统的青睐,本文就来详细的解开该技术的面纱。 优质内容请关注微信公众号“Web项目聚集地”

    用户1093975
  • 微信扫码登录实战(附代码)

    导读:由于微信端流量比较足,所以扫码登录系统功能也受到了很多系统的青睐,本文就来详细的解开该技术的面纱。

    Java团长

扫码关注云+社区

领取腾讯云代金券