停止聚焦,即使我不点击div的外部

时间:2015-11-18 16:19:36

标签: javascript jquery html css

我已经编写了一小段代码,其中我有一个div容器,其中div包含spansforms textbox btns。当我点击btn1时,容器高度增加并显示一个文本框但是当我点击文本框时div会聚焦。怎么可能当我点击btn1并保持焦点甚至我点击文本框(点击btn1并显示黑盒子后)它不应该聚焦,当我点击容器的网站它应该聚焦?我该怎么办请帮助我?

var tt = $.noConflict();
tt(document).ready(function($) {
  $(".qta").focus(function() {

    $(".gutt").css({
      'display': 'inline-block'
    });
    $(".gutte").addClass('grandisciti');
  });

  $(".gutte").focusout(function() {

    $(".gutt").css({
      'display': 'none'
    });
    $(".gutte").removeClass('grandisciti');
  });
});
body {
	  width: 100%;
	  height: 100%;
	  background-color: #c1c2c3;
	}
	.gutte {
	  box-sizing: border-box;
	  position: relative;
	  display: block;
	  width: 550px;
	  height: 50px;
	  background-color: #fff;
	  color: #000;
	  margin: 0px;
	  padding: 0px;
	  margin-left: 32%;
	  margin-top: 30px;
	  padding-top: 2.5px;
	  padding-left: 1px;
	  padding-bottom: 2px;
	  border-radius: 10px;
	  border-radius: 10px;
	  text-align: center;
	}
	.ati {
	  box-sizing: border-box;
	  position: static;
	  display: inline-block;
	  width: 105px;
	  height: 45px;
	  margin: 0px;
	  padding: 0px;
	  padding: 0px 10px;
	  border: none;
	  background-color: #ccc;
	  /*border:2px solid #ccc;*/
	  border-radius: 10px;
	  outline: none;
	  cursor: pointer;
	  transition: 0.8s all;
	  font-size: 120%;
	  color: #000;
	}
	.grandisciti {
	  width: 600;
	  height: 300px;
	  -webkit-box-shadow: 2px 2px 5px 6px rgba(0, 0, 0, 0.5);
	  -moz-box-shadow: 2px 2px 5px 6px rgba(0, 0, 0, 0.5);
	  box-shadow: 2px 2px 5px 6px rgba(0, 0, 0, 0.5);
	}
	.gutt {
	  display: none;
	  width: 530px;
      margin:10px;
	  background-color: #000;
	}
	.tref {
	  display: inline-block;
	  width: 80%;
	  height: 100px;
	  resize: none;
	  outline: none;
	  padding: 10px;
	  margin: 15px;
	  border: 5px solid #ccc;
	}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

body
<div tabindex="1" class="gutte">
  <div  class="irj fjr_p05gure rddre ">
    <button class="ati qta ">btn1</button>
    <button class="ati ">btn2</button>
    <button class="ati ">bt3</button>

  </div>
  <span class="gutt">
				<input type="text" class="tref"/>
  </span>

</div>

1 个答案:

答案 0 :(得分:0)

仔细查看传递给focusout函数的事件,特别是target属性。你的gutte div可能会抓住按钮产生的焦点事件。你需要放入一些条件,以便在焦点在gutte中移动时不会折叠gutte。