【发布时间】:2012-03-24 16:22:25
【问题描述】:
有些想法是 ELEMENT_ID.focus() 在特定时间隐藏的 div 中。
这应该是一个很容易解决的问题——但我正在苦苦挣扎:(
***代码工作正常——页面加载时文本字段没有被关注。
第 1 步 [已解决] JAVASCRIPT:
$("#goal-input").focus();
$('#goal-input').keypress(function(event){
var keycode = (event.keyCode ? event.keyCode : event.which);
if(keycode == '13') {
etc, etc, etc
}
HTML
<input type="text" id="goal-input" name="goal" />
[步骤 2] JAVASCRIPT:
if (goal) {
step1.fadeOut('fast', function() {
step1.hide();
step2.fadeIn('fast');
etc, etc
HTML:
<div id="step-2">
<div class="notifications">
</div>
<input type="text" id="name" name="name" placeholder="Name" />
<script type="text/javascript">
$(function(){
$("#name").focus();
});
</script>
为什么第 2 步不起作用? :(
【问题讨论】:
-
一些示例代码怎么样? -- 根据
.focus()上的jQuery 文档:Attempting to set focus to a hidden element causes an error in Internet Explorer. Take care to only use .focus() on elements that are visible. To run an element's focus event handlers without setting focus to the element, use .triggerHandler("focus") instead of .focus(). -
“不工作”是什么意思?例如,代码运行时是否没有报告任何错误,但焦点没有按照您的意愿设置,或者浏览器是否给出错误?
-
提供了示例代码以及“不工作”的含义(文本字段不关注)@nnnnnn
-
这是什么意思? jsfiddle.net/GyXAt
#text在doc.ready之后从未关注过,尽管它显然会触发。 -
在@Morgon 上方提供了示例代码