我有一个包含textarea #content
和输入文本框#name
的页面。用户点击#content
后,我想阻止他失去该textarea的焦点,除非他点击#name
。
我尝试了以下内容:
// Prevent loss of focus for textarea
$("#content").on("blur", function(event) {
$('#name').mouseover(function() {
return true;
});
event.preventDefault();
this.focus();
return false;
});
它可以很好地防止元素失去焦点。但是我检查他是否正在徘徊#name
然后返回的想法不起作用。
答案 0 :(得分:2)
从here窃取代码以获取触发blur
的元素。
var clicky;
$(document).mousedown(function(e) {
// The latest element clicked
clicky = $(e.target);
});
$("#content").on("blur", function(event) {
if (clicky.attr('id') == 'name') {
return true;
}
event.preventDefault();
this.focus();
return false;
});
答案 1 :(得分:1)
这样的事,也许?
$(document).ready(function(){
var id;
$('#content').on('blur',function(){
$(":input").focus(function(){
id = this.id;
if(id != 'username' && id != 'content'){ // sorry, changed your id from name to username.
$('#content').focus();
}
});
});
});