我的DOM中有一个元素,我附加了一个ID。我希望在Page Loads之后将焦点调用到该元素并将其设置为css样式(border:yellow)以突出显示它当前所关注的内容。这就是我所拥有的:
//main.html
<myElement id= 'myEl'>
//main.js
window.setTimeout(function () {
document.getElementById('#myEl').focus();
}, 0);
当我刷新页面时,我收到此错误:
未捕获的TypeError:无法读取属性&#39;焦点&#39;为null
答案 0 :(得分:9)
由于javascript无法找到包含id='#myEl'
的任何元素,因此请删除以下内容中的额外#
:
document.getElementById('#myEl').focus();
_________________________^
或者改用jquery选择器:
$('#myEl').focus();
希望这有帮助。
答案 1 :(得分:1)
在运行时更改组件ID,因此使用类而不是ID就像
$(".ClassName").focus();
答案 2 :(得分:0)
下面的工作代码仅供参考
模板代码
<div class="css-description">description</div>
脚本代码
this.$nextTick(() => {
$(".css-description").focus();
})