繁体   English   中英

如何避免特定类应用CSS

[英]How to avoid the particular class from applying css

我的HTML

<body>
<div id="finalparent">
<!--many parent divs here-->
<div id="1stparent">
     <div id="txt_blog_editor" class="box" style="width: 1097px;">
      <div class="abc anotherclass">

       </div>
    </div>
 </div>
</div>
<div class="abc"></div>
</body>

我的剧本

 $('html').on('mouseover','.fr-bttn .fa-picture-o', function () {
        var pos = $(this).offset();
        console.log(pos.left+"||"+pos.top);
        var left_pos=(pos.left-15)+"px";
        var top_pos=(pos.top+35)+"px";
               $(".abc").css({position: "absolute", top: top_pos,  left: left_pos });
               $(".abc").show();
               $(".popup").show();
        });

    });

我想申请的lefttop ,以abc类是没有父母不给类,这是在id="txt_blog_editor"

根据此答案,这里是一个有效的代码段:

 jQuery.expr[':'].noparents = function(a,i,m){ return jQuery(a).parents(m[3]).length < 1; }; var elts = $(".abc").filter(":noparents(#txt_blog_editor)"); elts.css({ "background-color": "green" }); 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <div id="finalparent"> <!--many parent divs here--> <div id="1stparent"> <div id="txt_blog_editor" class="box" style="width: 1097px;"> <div class="abc anotherclass"> ABC With Parent </div> </div> </div> </div> <div class="abc">ABC WITHOUT Parent</div> 

基本上,您创建一个新的jQuery表达式:noparents ,该表达式返回没有选择器赋予父母的元素

您需要检查.abc是否具有父项#txt_blog_editor http://jsfiddle.net/ugv2pxdw/4/

        $('html').on('mouseover','.fr-bttn .fa-picture-o', function () {
        var pos = $(this).offset();
        console.log(pos.left+"||"+pos.top);
        var left_pos=(pos.left-15)+"px";
        var top_pos=(pos.top+35)+"px";

         $('.abc').each(function(){
            if (!$(this).parents('#txt_blog_editor').length) {
                 $(this).css({position: "absolute",top: top_pos,  left: left_pos });
                           $(this).show();
                           $(".popup").show();
            }
        });

});

如果abc类只是body的直接子代,为什么不使用body> .abc作为选择器呢?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM