Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何让textarea在jQuery工具覆盖表单中获得焦点?_Jquery_Jquery Tools - Fatal编程技术网

如何让textarea在jQuery工具覆盖表单中获得焦点?

如何让textarea在jQuery工具覆盖表单中获得焦点?,jquery,jquery-tools,Jquery,Jquery Tools,这应该很容易,但我快疯了。我弹出一个jQuery工具覆盖表单,其中包含一个textarea,我希望textarea在出现时具有焦点。表单本身运行良好,但我无法使焦点保持不变。显示表单时,将运行以下代码: $(document).ready(function () { console.log('firing!');] $('#edit-comment').css('color', '#ff0000'); $('#edit-comment').focus(); })

这应该很容易,但我快疯了。我弹出一个jQuery工具覆盖表单,其中包含一个textarea,我希望textarea在出现时具有焦点。表单本身运行良好,但我无法使焦点保持不变。显示表单时,将运行以下代码:

$(document).ready(function () { 
     console.log('firing!');]
     $('#edit-comment').css('color', '#ff0000');
     $('#edit-comment').focus();
 });
当表单出现时,我在console.log中得到了条目,并且得到了textarea颜色的变化,因此代码肯定正在运行并找到textarea。但我没有将焦点设置到文本区域

我觉得这很奇怪。有什么见解吗

$(function() {
   console.log("firing!");
   document.getElementById("edit-comment").style.color = "#F00";
   document.getElementByID("edit-comment").focus();
});

但是颜色会改变文本的颜色。如果要更改背景,请使用.backgroundColor;如果要更改边框,请使用.borderColor。我怀疑代码在DOM中创建#编辑注释之前运行。您的代码似乎在document.ready上运行


尝试运行
$('#编辑注释').focus()在加载覆盖的函数中进行编码,看看这是否有帮助。

与其说是回答,不如说是泛舟。时间是一种浪费;我找到了另一种做同样事情的方法。我认为阿诺关于编辑评论创建的确切时间的观点是其中的一部分;无论如何,谢谢你的帮助

颜色改变只是一个测试调用,我输入这个测试调用是为了确保我找到了正确的文本区域,并且我可以对它做些什么——它不会真的存在。但是不管怎样,(a)document.getElementById调用与jQuery调用有何不同,(b)我尝试了它,但它也不起作用??奇怪的是,我有一个网络应用程序可以做到这一点,它正在工作,我刚刚用Chrome测试了一个快速html,但用IE 8却没有。这应该是有效的。是的,这就是为什么它这么奇怪:)。Re IE 8——检查——如果调用时表单元素不可见,IE显然会中断。我试图修改上面的代码,使show()处理程序中的focus()调用挂起textarea,但仍然没有成功。