在IE6中显示()或切换()最初隐藏的文本输入字段后,无法在框中输入任何文本。聚焦()也不可能在元素上。
我正在使用jquery 1.3.2
这是代码......有什么想法吗?
$(document).ready(function(){
$(".hide").click(function(){
$(".form").toggle();
})
})
和HTML
<form>
<div class="hide">
Show
</div>
<div class="form" style="display:none">
<input type="text" name="crap">
</div>
</form>
答案 0 :(得分:0)
通常情况下这很好。你有没有可能导致另一个元素“覆盖”文本输入的css?
重复的div或其他项目通常会阻止您在不知道原因的情况下点击。
特别是如果您的页面在IE6中以Quirks模式呈现,则异常元素可能是一个主要问题,很难找到。确保您的代码和CSS都使用W3C Validator验证。
答案 1 :(得分:0)
在IE6中适合我:请参阅http://jsbin.com/uzoni(http://jsbin.com/uzoni/edit进行编辑):
完整的测试用例:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
</head>
<body>
<form>
<div class="hide">Show</div>
<div class="form" style="display:none">
<input type="text" name="crap" />
</div>
</form>
<script type="text/javascript">
$(document).ready(function(){
$(".hide").click(function(){
$(".form").toggle();
if($(".form").is(":visible")) {
$(".form input")[0].focus()
}
})
})
</script>
</body>
</html>
显示输入后,我可以focus()
并输入框。
答案 2 :(得分:0)
对不起家伙这似乎是由于我的机器上安装了多个错误导致的。它似乎在安装了IE6的机器上运行良好。