Applet阻止了IE的焦点

Rio*_*Rio 3 jquery applet internet-explorer focus

我试图在输入区域实现光标焦点,IE给了我很多麻烦.我已经尝试了一些事情(也改变了超时,大数):

setTimeout(function() { document.getElementById('myInput').focus(); }, 10);
Run Code Online (Sandbox Code Playgroud)

它不会起作用.我注意到我在页面上也有一个小程序,当我删除小程序时,上面的工作.此外,如果我在focus()触发器之前发出警报,它将起作用.

applet没有特别做任何事情(它实际上检索用户的MAC地址),并且它最后一次调用外部JS函数将MAC地址发送到DOM.我已经尝试将焦点(超时和所有)放在JS函数的末尾,但这也不起作用.

可能有什么不对?事情在Firefox中运行良好,而不是在IE中.

目前的设置:

//This is called from within the applet using a window.call
function everythingDone()
{
$("#someinput").focus();
//setTimeout(function() { document.getElementById('someInput').focus(); }, 1000);
};

$(function() 
{
    var applet = "<object classid='clsid:CAFEEFAC-0014-0002-0000-ABCDEFFEDCBA' width='0' height='0'><param name='code' value='someapplet.class' /><param name='archive' value='/someapplet.jar' /></object>";
    $("#appletarea").html(applet);
    //setTimeout(function() { document.getElementById('someInput').focus(); }, 1000);
});
Run Code Online (Sandbox Code Playgroud)

JB *_*aux 8

我认为更简单的解决方法是使用applet/object/embed标记的initial_focus参数.

<applet ...>
    <param name="initial_focus" value="false"/>
</applet>
Run Code Online (Sandbox Code Playgroud)