1

因此,与较早的问题有关,但请原谅我天真的 javascript 方式。基本上,我现在想在将文本输入添加到 DOM 时自动将其置于焦点。我的一部分认为我可能会尝试在对象存在之前为其添加焦点,但我不太确定如何修复它。现在这是我的相关代码:

var searchWrapper = document.createElement("div");
searchWrapper.id = "search-wrapper";

this.parentNode.replaceChild(searchWrapper, this);
document.getElementById("search-wrapper").focus();

但这并不完全奏效。我应该将焦点设置为replaceChild 的回调,还是有其他方法可以做到这一点?

4

1 回答 1

1

尝试以下操作:

Live Demo

var searchOrig = document.getElementById("search-wrapper"); 

var searchWrapper = document.createElement("div");
searchWrapper.id = "search-wrapper";
searchWrapper.setAttribute('tabindex', '0'); 

searchOrig.parentElement.replaceChild(searchWrapper, searchOrig);
document.getElementById("search-wrapper").focus();
于 2013-07-15T15:26:09.157 回答