我正在改变iframe内容。它可以在FF中使用,但在Google Chrome中不会触发focus
和blur
事件!
var iframe = $('#iframe').get(0);
iframe.onload = function(){
iframeDoc = $(iframe.contentWindow.document);
iframeDoc.focus(function(){
alert('focused');
}).blur(function(){alert('blur');
alert('blured');
});
}
尽管如此,keyup
,keypress
之类的其他活动正在发挥作用。你知道问题是什么以及如何处理它?</ p>
答案 0 :(得分:4)
在Chrome中,iFrame文档没有焦点或模糊事件,窗口显示:
var iframe = document.getElementById('iframe');
var iWindow = iframe.contentWindow;
iWindow.onfocus = function(){
console.log('focused');
}
iWindow.onblur = function(){
console.log('blured');
}
答案 1 :(得分:0)
根据http://api.jquery.com/focus/,focus
只能用于某些元素(主要是表单元素)。您可能需要考虑从body
标记上的iframe中捕获点击事件,以确定用户是否正在与其进行交互。