当尝试将焦点放在聚合物元素上时,我总是不得不将其包装在setTimeout中,这种情况下是一个聚合物paper-input
元素。像这样:
setTimeout(function() {
paperInput.focus();
}, 10);
我已经阅读了关于焦点(focus())的Polymer元素的不同Stackoverflow帖子,发现其中一些存在相同的问题。 我真的无法接受只有在包装时才能正常工作这个事实。我想知道为什么当我不包装它时它不能工作。
所以我的问题是,为什么?为什么我必须用
setTimeout
来包装它?目前使用的是Polymer 1.4。但我注意到旧版本中也有相同的行为。
谢谢!
更新
我尝试复制该问题,但实际上它可以正常工作。 所以我打赌问题出在我的环境中:jsbin 如果我找到解决方案,我将继续更新此帖子。感谢您的帮助。
paper-input
的组件的外观,就很难说。你能创建一个 Plunker 来重现吗? - Günter ZöchbauersetTimeout
来使用focus()
。我同意我们需要查看您的代码以帮助解决您的错误。您能否更新您的问题,包括SO帖子的链接? - tony19