Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.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
jquery fancybox焦点问题_Jquery_Fancybox_Focus - Fatal编程技术网

jquery fancybox焦点问题

jquery fancybox焦点问题,jquery,fancybox,focus,Jquery,Fancybox,Focus,我有一个在jQuery Fancybox窗口中打开的表单。 页面加载时,fancybox窗口将自动打开。加载时,我希望它将焦点设置在Fancybox窗口中表单中的用户名字段上。 我发现这必须在fancybox被envoked时完成,因此我尝试了给定的不起作用的代码:代码片段: jQuery(document).ready(function() { $("#hidden_link").trigger('click'); document.getElementById('username').foc

我有一个在jQuery Fancybox窗口中打开的表单。 页面加载时,fancybox窗口将自动打开。加载时,我希望它将焦点设置在Fancybox窗口中表单中的用户名字段上。 我发现这必须在fancybox被envoked时完成,因此我尝试了给定的不起作用的代码:代码片段:

jQuery(document).ready(function() {
$("#hidden_link").trigger('click');
document.getElementById('username').focus(); 
});

表单名称是“登录表单”,字段ID是“用户名”。

我不太确定您使用的是什么版本

我假设您使用的是版本1 因此,在调用fancybox时,请尝试添加此选项

  • onStart将在尝试加载内容之前调用
  • 取消加载后将调用onCancel
  • 一旦显示内容,将调用onComplete
  • 将在关闭前调用onCleanup
  • 一旦FancyBox关闭,将调用onClosed
这来自fancybox api文档

并添加您想要使用的函数

在这种情况下

$('#somediv').fancybox({
    oncomplete: function() {
        document.getElementById('username').focus();
    }
});

您正在尝试在fancybox出现之前调用focus()。将该调用放在onComplete()中,而不是放在ready()中


我必须使用setTimeout来解决这个问题

onComplete:函数(){ setTimeout(函数(){ $('.sms_code')[“1”].focus(); },1000);}


这是我的实际代码:jQuery.ajax({type:“POST”,url:“loadCustomerDetails.php”,success:function(msg){$('#customerDetails').html(msg);$(“#hidLinkCustomerDetails”).fancybox().trigger('click');$('#txtCustomer').focus();});它只是触发了fancybox.jQuery.ajax({type:“POST”,url:“loadCustomerDetails.php”,success:function(msg){$('#customerDetails').html(msg);$(“#hidLinkCustomerDetails”).fancybox().trigger('click');$('#txtCustomer').focustomer()})。。这是实际代码fancybox的哪个版本?
onComplete: function() { 
          $('#username').focus(); 
}