将焦点集中在按下“escape”上;关键
fixing focus out on pressing a "esc" key
当用户点击搜索框时,用户会在搜索框内看到一个"闪烁光标"。
我希望,当用户按下Esc键时,"闪烁的光标"应该离开搜索框,并从搜索框中聚焦出来。
我需要JavaScript代码来做。
input[type=text] {
width: 130px;
box-sizing: border-box;
border: 2px solid #ccc;
border-radius: 4px;
font-size: 16px;
background-color: white;
background-image: url('searchicon .ng');
background-position: 10px 10px;
background-repeat: no-repeat;
padding: 12px 20px 12px 40px;
-webkit-transition: width 0 .s ease-in-out;
transition: width 0 .s ease-in-out;
}
input[type=text] :ocus {
width: 100%;
}
<p>Animated search form :/p>
<form>
<input type="text" name="search" placeholder="Search .">
</form>
当按下"esc"时使用document.getElementById("search").blur()
就可以了,其中"search"是给定给搜索框的id。
document.onkeydown = function(evt) {
evt = evt || window.event;
if (evt.keyCode == 27) {//27 is the code for escape
document.getElementById("search").blur();
}
};
input[type=text] {
width: 130px;
box-sizing: border-box;
border: 2px solid #ccc;
border-radius: 4px;
font-size: 16px;
background-color: white;
background-image: url('searchicon.png');
background-position: 10px 10px;
background-repeat: no-repeat;
padding: 12px 20px 12px 40px;
-webkit-transition: width 0.4s ease-in-out;
transition: width 0.4s ease-in-out;
}
input[type=text]:focus {
width: 100%;
}
<p>Animated search form:</p>
<form>
<input id="search" type="text" name="search" placeholder="Search..">
</form>
既然你提到了jQuery -这里是解决方案。
$('input[type=text]').keyup(function(e) {
if (e.keyCode === 27) $(this).blur();
});
input[type=text] {
width: 130px;
box-sizing: border-box;
border: 2px solid #ccc;
border-radius: 4px;
font-size: 16px;
background-color: white;
background-image: url('searchicon.png');
background-position: 10px 10px;
background-repeat: no-repeat;
padding: 12px 20px 12px 40px;
-webkit-transition: width 0.4s ease-in-out;
transition: width 0.4s ease-in-out;
}
input[type=text]:focus {
width: 100%;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p>Animated search form:</p>
<form>
<input type="text" name="search" placeholder="Search..">
</form>
相关文章:
- Jquery $ mark escape
- 关键帧之间的css3动画延迟
- 访问css3动画的关键帧
- 在服务器中编码,并使用escape在javascript中解码
- 为什么我的关键命令不起作用
- 什么'是在HTML5画布中创建关键事件的最佳方式
- 我在会话变量中传递了一个数组.我需要将关键笔划传递给它以返回值
- 原子外壳中的关键事件
- 当用户滚动到页面的某个部分时,如何触发关键帧
- Js的关键限制,但有一点仁慈
- 捕获所有关键输入,直到以响应式编程方式按下 ENTER
- javascript escape() 和 unescape() 的 PHP 实现
- 不允许的关键字符.通过 Codeigniter 中的 jQuery 在帧中加载嵌入代码时出错
- 动态关键帧插入在 IE 或 Firefox 上不起作用
- 如何创建Escape按钮
- 当我没有'我不知道关键值
- 相当于StringEscapeUtils.escape java的Javascript
- 按两次escape键后返回旧值-Internet Explorer
- URI escape / unescape from Javascript to Perl
- 将焦点集中在按下“escape”上;关键