用jquery在div中找不到活动元素

时间:2017-09-13 08:43:00

标签: javascript jquery css

我有一个div,它有一些锚点或按钮生成,取决于情况,我需要一个foucsout事件,可以检测是否有一些div元素被点击,如果不是我需要做一些逻辑

我在焦点事件中尝试了这个

 $('.navigate-modules-li').find(':active').length == 0

它适用于chrome但不适用于Firefox。 :焦点和:选择不起作用

任何想法?感谢。

1 个答案:

答案 0 :(得分:0)

不是最终的解决方案,因为它并不完全清楚你想要实现的目标,但下面是工作示例如何"标记"在内部点击内容以及之后如何获取它们的div。希望这能帮助你找到方法。



$(function() {
  $('.navigate-modules-li > div > a').on('click', function() {
    if (!$(this).parent().hasClass('clicked')) {
      $(this).parent().addClass('clicked').css('background', 'green');
    }
     
    console.log('Divs clicked: ' + $('.navigate-modules-li > div.clicked').length);
  });
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<div class="navigate-modules-li">
  <div>
    Div 1
    
    <a href="#">Click me</a> or <a href="#">Click me</a>
  </div>
  <div>
    Div 2
    
    <a href="#">Click me</a> or <a href="#">Click me</a>
  </div>
  <div>
    Div 3
    
    <a href="#">Click me</a> or <a href="#">Click me</a>
  </div>
</div>
&#13;
&#13;
&#13;