-1

我正在使用 iFrame 加载其 url 在文本框中指定的页面。这是我的代码:

<iframe id="import_url_iframe">

</iframe>

我使用 jQuery 更改事件来获取文本框中 url 的更改:

    $("#wiki_form_url").change(function(){

        var value = $(this).val();
        $("#import_url_iframe").attr("src", value);

    });

如果我在文本框中指定 url 后单击外部,这工作正常。但是,我需要这样做,所以当我在文本框中编写 url 时,它应该在 iFrame 中显示页面(没有任何外部点击)。我怎样才能做到这一点?

4

1 回答 1

2

使用 keydown 事件,可能有延迟,以便它在延迟后加载(即当用户没有输入 X 秒时)。所以:

var timeout = null;
$("#wiki_form_url").on('keydown', function(){
    timeout = setTimeout(function(){
        // load URL here
    }, 1000);
});

并实施@JCOC611 的建议,从这里获取代码,添加以下代码:

$("#wiki_form_url").on('keydown', function (e){
    if(e.keyCode == 13){
        timeout = null;
        // Load URL here
    }
})'

您可以更进一步,并在文本框失去焦点时添加处理程序

$("#wiki_form_url").on('focusout', function (){
    timeout = null;
    // Load URL here
})'
于 2013-03-19T01:50:11.033 回答