如何在flash游戏的javascript中改变页面加载的焦点?

如何在flash游戏的javascript中改变页面加载的焦点?,javascript,ruby-on-rails,ruby,flash,haml,Javascript,Ruby On Rails,Ruby,Flash,Haml,这是我在html中生成的flash对象的代码: 在哈姆,我有: :javascript $(document).ready(function() { document.getElementById('#{@game.codename}').focus(); }); 我希望游戏在加载后能够集中注意力。有可能吗?正确的方法是什么?如果您必须等待它出现,这可能会起作用: var timer = setInterval(function() { var app

这是我在html中生成的flash对象的代码:

在哈姆,我有:

:javascript $(document).ready(function() { document.getElementById('#{@game.codename}').focus(); });
我希望游戏在加载后能够集中注意力。有可能吗?正确的方法是什么?

如果您必须等待它出现,这可能会起作用:

var timer = setInterval(function() {
  var app = $('#coloredfusion');

  if (app[0]) {
    app.focus();
    clearInterval(timer);
  }
}, 500);

这将每隔500毫秒轮询一次元素的存在,当它找到它时,将对其进行聚焦并停止检查。

我在Flash应用程序中成功地使用了以下内容-在creationComplete事件处理程序中创建应用程序后,它将回调JavaScript以设置聚焦:

// Force the browser to give focus to the app
ExternalInterface.call('function() { var app = document.getElementById("appName"); app.focus(); }');

将appName替换为实际的应用程序名。

@sawa否。我的代码没有关注游戏。会出现什么JavaScript错误?更重要的是,呈现时JavaScript源代码是什么样子?查看源代码并查看它在客户端中的显示方式。另外,如果您使用的是jQuery,为什么不使用$'…'.focus而不是艰难地执行它?@sawa Uncaught TypeError:无法正确地读取null@tadman JS的属性'focus':$document.readyfunction{document.getElementById'ColoredMission'。focus;};