Chrome不会触发内容可编辑iframe中的文档焦点和模糊事件
我正在重点关注iframe内容。 它适用于FF,但focus
和blur
事件不会在Google Chrome中触发!
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
这样的其他事件正在发挥作用。 你知道问题是什么以及如何处理它?
在Chrome中,iFrame文档没有焦点或模糊事件,窗口会执行以下操作:
var iframe = document.getElementById('iframe'); var iWindow = iframe.contentWindow; iWindow.onfocus = function(){ console.log('focused'); } iWindow.onblur = function(){ console.log('blured'); }
小提琴
根据http://api.jquery.com/focus/ , focus
只能用于某些元素(主要是表单元素)。 您可能需要考虑从body
标签上的iframe中捕获click事件,以确定用户是否正在与之进行交互。