2016-06-24 20 views
-1

单击空白区域时,项目的焦点()将消失。jquery,单击页面上的空白区域时焦点将消失

代码喜欢

$("#cusArea").find("#" + cusId).focus(); 

我希望如果该项目没有改变,重点将集中在当前项目的任何点击空白处或右键单击....

如何这个问题的解决方法?

+0

你这是什么意思'如果项目没有改变' – Mengo

+0

'焦点'基于改变客户关注什么。 – PHPglue

+0

我的意思是所选的锚点项目不会改变,无论您单击空白区域还是单击鼠标右键,焦点都将保持在选定的锚点项目上。 – Colin

回答

1

这是事件的默认行为。但也有一些解决方法也有一些副作用,你必须看看。

例如,如果您的目的是关注某些输入并希望保持焦点,直到输入一些值,然后我们才能使用。

$("body").click(function(e){ 

if(!$("#inp1").val()){ 
e.preventDefault(); 
    $("#inp1").focus(); 
    return; 
} 

希望你可以做更多的试验,并获得有关事件的良好知识。

jsbin code sample

+0

你的jsbin链接不工作 – Thierry

+0

你也不需要使用点击身体应该尝试输入模糊事件 –

0

demo

应该工作

var _value = null; 

//需要外界宣称它在功能包装

$(function() { 
    // Handler for .ready() called. 

    _value = $('#test').val(); 
    //save start value of input 

    $('#test').blur(function (e) { 
     //catching blur event of input 
     var _this = $(this); 
     //saving jq object of element 

     //compering stored value to current input value 
     if (_value == _this.val()) { 
      //values are same 
      e.preventDefault(); 
      //set fosuc back on element 
      _this.focus(); 
     } else { 
      //in other case 
      // save new value 
      // not sure i you need this 
      _value = _this.val(); 
     } 

    }) 
//set focus on input at the start 
    $('#test').focus(); 
})