jQuery'的focus()
文档的最后一个例子]1 指出
$('#id').focus()
应该使输入集中(激活)。我似乎不能让它工作。
即使在本网站的控制台中,我也在搜索框中尝试这样做
$('input[name="q"]').focus()
但我什么也没得到。有什么想法吗?
事实上,你所举的专注于这个网站的例子很好,只要你不专注于控制台。之所以不能工作,只是因为它没有从开发控制台中窃取焦点。如果你在控制台中运行以下代码,然后在浏览器窗口中快速点击后,你会看到它聚焦在搜索框上:
setTimeout(function() { $('input[name="q"]').focus() }, 3000);
至于你的另一个问题,过去给我带来麻烦的是事件的顺序。你不能对一个还没有连接到DOM上的元素调用focus()。你要关注的元素是否已经被连接到DOM上了?