Javascript 聚焦或模糊触发功能(一起)

Javascript 聚焦或模糊触发功能(一起),javascript,jquery,Javascript,Jquery,我想要的是,当输入获得焦点或失去焦点时(两个事件都发生),能够做一些事情 我尝试了以下方法,但这是按事件单独工作的(当单独编码时):只关注焦点,或者只关注失去焦点 另外,我希望它尽可能跨平台(包括触摸设备),这是否足够(聚焦和模糊)或者我需要关心其他一些事件 HTML: <input type="text" class="inp"> <div id="zzz" class=""></div> div { height: 100px; width: 1

我想要的是,当输入获得焦点或失去焦点时(两个事件都发生),能够做一些事情

我尝试了以下方法,但这是按事件单独工作的(当单独编码时):只关注焦点,或者只关注失去焦点

另外,我希望它尽可能跨平台(包括触摸设备),这是否足够(聚焦和模糊)或者我需要关心其他一些事件

HTML:

<input type="text" class="inp">
<div id="zzz" class=""></div>
div {
  height: 100px;
  width: 100px;
  background: #000;
}
.one {
  background: #ff0;
}
jQuery(3.2.1):


分别指定所有事件侦听器,并在其上调用一个函数,这样可以正常工作

$(文档).ready(函数(){
$(“.inp”)。在(“按键”,功能(){
doSomething();
});
$(“.inp”)。关于(“焦点”,函数(){
doSomething();
});
$(“.inp”)。关于(“模糊”,函数(){
doSomething();
});
});
函数doSomething()
{
如果(!$(“.inp”).val()){
$(“#zzz”)。删除类(“一”);
}
否则{
$(#zzz”).addClass(“一”);
}
}
div{
高度:100px;
宽度:100px;
背景:#000;
}
.一{
背景:#ff0;
}

分别给出所有事件侦听器,并在其上调用一个函数,这样就可以工作了

$(文档).ready(函数(){
$(“.inp”)。在(“按键”,功能(){
doSomething();
});
$(“.inp”)。关于(“焦点”,函数(){
doSomething();
});
$(“.inp”)。关于(“模糊”,函数(){
doSomething();
});
});
函数doSomething()
{
如果(!$(“.inp”).val()){
$(“#zzz”)。删除类(“一”);
}
否则{
$(#zzz”).addClass(“一”);
}
}
div{
高度:100px;
宽度:100px;
背景:#000;
}
.一{
背景:#ff0;
}

另一种方法是-

你必须改变这个-

$(".inp").on("keypress", "focus", "blur", function () {

$(文档).ready(函数(){
//还尝试使用:$(“.inp”).focus.blur(函数(){
$(“.inp”)。打开(“按键聚焦模糊”,函数(){
if(!$(this.val()){
$(“#zzz”)。删除类(“一”);
}
否则{
$(#zzz”).addClass(“一”);
}
});
});
div{
高度:100px;
宽度:100px;
背景:#000;
}
.一{
背景:#ff0;
}

另一种方法是-

你必须改变这个-

$(".inp").on("keypress", "focus", "blur", function () {

$(文档).ready(函数(){
//还尝试使用:$(“.inp”).focus.blur(函数(){
$(“.inp”)。打开(“按键聚焦模糊”,函数(){
if(!$(this.val()){
$(“#zzz”)。删除类(“一”);
}
否则{
$(#zzz”).addClass(“一”);
}
});
});
div{
高度:100px;
宽度:100px;
背景:#000;
}
.一{
背景:#ff0;
}


阅读文档:阅读文档:非常感谢!所以我很接近:)非常感谢!所以我很接近:)我建议
$('#元素')。在('keypress blur focus',function(e){//e.type是触发事件的类型});
方法。实际上这取决于你想要实现什么。没有重大区别。我建议
$(“#element”).on('keypress blur focus',function(e){//e.type是触发事件的类型})
方法。实际上,这取决于您想要实现什么。没有重大区别。
$(".inp").on("keypress focus blur", function () {