Jquery iframe加载函数在.append上启动

Jquery iframe加载函数在.append上启动,jquery,iframe,load,append,Jquery,Iframe,Load,Append,假设我有这个代码: var jqiFrame = $('<iframe name="jqiframe" id="jqiframe" src="about:blank"></iframe>'); $('body').append(jqiFrame); jqiFrame.load(function() { // Some code }); var jqiFrame=$(''); $('body').append(jqiFrame); 加载(函数(){ //一些代码

假设我有这个代码:

var jqiFrame = $('<iframe name="jqiframe" id="jqiframe" src="about:blank"></iframe>');
$('body').append(jqiFrame);
jqiFrame.load(function() {
    // Some code
});
var jqiFrame=$('');
$('body').append(jqiFrame);
加载(函数(){
//一些代码
});

如何使.load函数仅在实际加载iFrame时启动,而不是在将其附加到正文空时启动?

您不能最初设置src属性,但可以稍后再设置

var jqiFrame = $('<iframe name="jqiframe" id="jqiframe"></iframe>');
$('body').append(jqiFrame);
jqiFrame.load(function() {
    // Some code
});
var jqiFrame=$('');
$('body').append(jqiFrame);
加载(函数(){
//一些代码
});

您也可以在附加之前移动加载。

您还可以在加载就绪时显示加载(否则隐藏):

CSS:

脚本:

var jqiFrame = $('<iframe name="jqiframe" id="jqiframe" src="http://www.stackoverflow.com"></iframe>');
$('body').append(jqiFrame);

jqiFrame.load(function() {
    alert("loaded");
    $("iframe").css("display","block");
});​
var jqiFrame=$('');
$('body').append(jqiFrame);
加载(函数(){
警报(“已加载”);
$(“iframe”).css(“显示”、“块”);
});​
var jqiFrame = $('<iframe name="jqiframe" id="jqiframe" src="http://www.stackoverflow.com"></iframe>');
$('body').append(jqiFrame);

jqiFrame.load(function() {
    alert("loaded");
    $("iframe").css("display","block");
});​