Javascript 当标签在后台时,给予元素焦点似乎不起作用

Javascript 当标签在后台时,给予元素焦点似乎不起作用,javascript,ajax,forms,focus,blur,Javascript,Ajax,Forms,Focus,Blur,我正在尝试使用javascript和firefox抓取一个网页。在页面上,当表单输入更改时,新内容将使用ajax加载。我的脚本填充表单输入,从中移除焦点,并检测ajax内容加载 问题是,如果浏览器选项卡没有焦点,它就不起作用。所以我不得不让它一直在前台运行,这很不方便 这是这一页 (在“location”表单输入上似乎有一个onchange()事件处理程序。) 下面是我在firefox控制台中运行的测试 (当它起作用时,您将在表格下方看到一条消息:“下面是我们找到的属性”) 如果您在同一浏览

我正在尝试使用javascript和firefox抓取一个网页。在页面上,当表单输入更改时,新内容将使用ajax加载。我的脚本填充表单输入,从中移除焦点,并检测ajax内容加载

问题是,如果浏览器选项卡没有焦点,它就不起作用。所以我不得不让它一直在前台运行,这很不方便

这是这一页 (在“location”表单输入上似乎有一个onchange()事件处理程序。)

下面是我在firefox控制台中运行的测试 (当它起作用时,您将在表格下方看到一条消息:“下面是我们找到的属性”)

如果您在同一浏览器选项卡(作为底部的面板)中运行firebug,这将起作用。 但是,如果您分离firebug面板(使其成为一个单独的窗口),这样当它有焦点时,浏览器窗口将不会运行,那么ajax加载程序将不会运行

//change the value and then remove focus
document.getElementById('location').value= "N1";
document.getElementById('location').focus();
document.getElementById('location').blur();

你试过发邮件吗?对于页面之间的交流,这似乎是最可靠的方式。我还没有听说过postMessage,所以谢谢你的建议。然而,据我所知,我不能使用它,因为我无法访问我正在抓取的页面,所以我不能向其中添加“addEventListener('消息',…”。