'在Div外部点击鼠标时隐藏Div'所有尝试都不起作用

时间:2018-02-08 20:15:30

标签: jquery html css

我正在尝试将代码设置为在单击背景或其他div时隐藏div。我有四个按钮,当一个处于活动状态而另一个处于活动状态时,活动元素应该关闭而另一个打开。但是,使用我的代码,当我将鼠标移离鼠标时,活动元素会隐藏。我需要它保持直到我点击背景。我尝试了不同的选项,其中最后一个是'.mouseout'。请参阅下面的代码:

<!DOCTYPE html>
<html lang="en">

  <body>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.min.js"></script>
<div class="architecture">
  <object class="archsvg" type="image/svg+xml" data="architecture-icon.svg" width="260px" height="288.14px">
         </object>
  <a href="architecture.html">
    <div class="arch">
      <p class="to-architecture">Continue to 9haus Architecture</p>
      <hr class="aline" />
    </div>
  </a>
  <button class="closea">x</button>
</div>

<script>
  (function($) {
    $("#a").click(function() {
      $(".architecture").toggle('slide', {
        direction: 'right'
      }, 500);
    });
  })(jQuery);
</script>

<script>
  (function($) {
    $('.closea').click(function() {
      $('.architecture').hide('slide', {
        direction: 'right'
      }, 500);
    });
  })(jQuery);
</script>

<script>
  (function($) {
    $(':not(.architecture)').mouseout(function() {
      $('.architecture').hide('slide', {
        direction: 'right'
      }, 500);
    });
  })(jQuery);
</script>

</body>
</html>

这是问题的最小版本。

http://jsfiddle.net/Lws53qyw/1/

0 个答案:

没有答案