代码之家  ›  专栏  ›  技术社区  ›  Julian de Wit

JQuery thickbox与iframe。将焦点设置为输入字段

  •  2
  • Julian de Wit  · 技术社区  · 17 年前

    jQuery p在我的申请。 ( )
    一切都很好,但我想设置 d

    Iframe加载了一个普通的aspx页面,所以我想做一个$(document).ready(.focus);





    <a href="page.aspx?placeValuesBeforeTB_=savedValues&TB_iframe=true&height=550&width=700" title="Add" class="thickbox">Add</a>
    
    2 回复  |  直到 17 年前
        1
  •  4
  •   bcook8033    17 年前

    ThickBox通过调用iframe元素的onload事件中的方法来显示iframe的容器。由于iframe在加载iframe内容之前一直隐藏在父页面上,因此您不能仅使用$(document).ready(..focus)设置焦点;。我发现解决这个问题的最简单方法是使用setTimeout将设置焦点的函数调用延迟到显示iframe之后:

    jQuery(document).ready(function() {        
        setTimeout(function(){
            $('#YourElementID').focus();   
        },200);
    });
    

        2
  •  0
  •   Boldewyn    17 年前

    请注意,这不会执行底层元素的focus方法。

    这意味着,你的代码更有可能是:

    不同的是,在我的例子中,你使用DOM元素自己的焦点元素,而在你的例子中你使用jQuery的焦点元素。

    这仍然不起作用