我只想让tag-it小部件在页面加载后获得焦点。我尝试过各种方法,比如:
<script type="text/javascript">
$("#myTags").tagit("tagInput").click();
</script>和
<script type="text/javascript">
$("#myTags").tagit("tagInput").focus();
</script>甚至还有更奇特的东西,比如使用jQuery修改ID和调用
<script type="text/javascript">
$("#newIDiTriedToMake").focus();
</script>我所做的任何事情似乎都没有将键盘焦点放在tag-it小部件上。我必须用tab键通过我的页面转到它,或者用鼠标手动单击它开始输入标签。有谁有线索给我吗?
发布于 2013-05-02 07:35:44
我认为,当我试图设置焦点时,文档还没有完成构建(因此元素可能不存在),这一点你们都是正确的。然而,我用一种简单的方法解决了这个问题:编辑源代码。
我刚添加了
this.tagInput.attr('autofocus', 'autofocus');tag-it的_create()方法,它将焦点放在元素上,而不必求助于Javascripty的好处。这起作用了。
发布于 2013-05-02 07:28:29
我认为您所缺少的就是在设置焦点之前要构建的DOM。也就是说,如果.tagit("tagInput")引用了一个可聚焦元素。您可以尝试:
<script type="text/javascript">
$(function() {
$("#myTags").tagit("tagInput").focus();
});
</script>发布于 2013-05-02 07:29:24
当你有一个document.ready的时候,你应该集中精力:
<script type="text/javascript">
$(document).ready(function(){
$("#newIDiTriedToMake").tagit("tagInput").focus();
})
</script>https://stackoverflow.com/questions/16327890
复制相似问题