Google Chrome问题中的OnFocus事件

时间:2015-04-21 19:02:42

标签: javascript google-chrome onfocus

我很好奇是否有其他人在使用谷歌浏览器获取onfocus方法时遇到问题?现在我正在尝试做以下事情:



function setInitialFocus() {
  var browseSelectedIdFocus = "${ApplicationData.currentSelectedIdEncoded}";
  if (browseSelectedIdFocus != '' && currentAdminFunction != 'viewEditRelatedAllowedValues' && currentAdminFunction != 'viewRelatedAllowedValues' && currentAdminFunction != 'createRelatedAllowedValues') {
    if (document.getElementById(browseSelectedIdFocus).className == 'openNode') {
      document.getElementById(browseSelectedIdFocus).className = 'selectedOpenNode';
    } else if (document.getElementById(browseSelectedIdFocus).className == 'node') {
      document.getElementById(browseSelectedIdFocus).className = 'selectedNode';
    } else if (document.getElementById(browseSelectedIdFocus).className == 'noChild') {
      document.getElementById(browseSelectedIdFocus).className = 'noChildSelected';
    }
    document.getElementById(browseSelectedIdFocus).scrollIntoView(true);
    document.all['treev'].scrollLeft = 0;

  }
}

<body onfocus="setInitialFocus()" ondblclick="return(false)" style=" align:left; margin-left:0px;">
&#13;
&#13;
&#13;

它在IE 11中完美运行,但在Chrome中它似乎永远不会达到setInitialFocus功能。是否有其他方法可以使用或需要添加某些东西以使焦点发挥作用。我使用的当前版本的Google Chrome是版本41.0.2272.89。任何帮助将不胜感激。

感谢。

1 个答案:

答案 0 :(得分:0)

如果您只需要在加载页面时触发代码,请使用onload代替onfocus

尽管如此,我建议您查看类似JQuery的库,这样您就不必使用名为obtrusive javascript的反模式DOM处理程序。