先看代码如下:
<form>
<input type="text" class="input_test">
<textarea class="textarea_test"></textarea>
</form>
<button class="btn_save">save</button>
<script src="Public/js/jquery-2.0.3.min.js"></script>
<script>
var bool_btn_clicked=false; //本来想用bool_btn_clicked来标记是否被点击
$('.textarea_test').blur(function(){
console.log(document.activeElement.tagName); //为什么获得焦点的总是body???即使点击input,获得焦点的总是body
$('.btn_save').click(function(){
bool_btn_clicked=true;
console.log('btn_save was click');
});
console.log('bool_btn_clicked-> '+bool_btn_clicked); //为什么bool_btn_clicked不等于true???
console.log('textarea_test was blur');
// ajax_save();
});
</script>
我希望能在textarea失焦时,获取用户点击的是什么元素(而导致 textarea失焦)。
重点是判断是不是因为 用户点击了按钮btn_save 而导致textarea失焦。
但不知为什么,document.activeElement.tagName 得到的总是body。
另外,我想用bool_btn_clicked来标记是否被点击,结果bool_btn_clicked不等于true。