我如何删除.append()然后添加.append()

How do I remove an .append() then add an .append()

本文关键字:append 然后 添加 何删除 删除      更新时间:2023-09-26

这将显示诊断页面的检查。我有一个。append(not_ok),但当swf文件100%加载时,我想删除not_ok追加,然后添加一个。append(ok)。

function callbackfunk(e){
  $(".FlashNotLoaded").css("color", "red").append(not_ok);
  var timer = setInterval(function(){
    if(e.ref.PercentLoaded() === 100){
        $(".FlashLoaded").remove();
        $(".FlashLoaded").css("color", "green").append(ok);
    }
  }, 1000);
}
swfobject.embedSWF("/static/diag/countdown.swf", "flashDiv", "550", "400", "8.0.0", "expressInstall.swf", flashvars, params, attributes, callbackfunk);

.append(not_ok)将被删除,但.append(ok)不会替换它。我试过了. replacewith (ok),但这似乎也不起作用

通常使用jQuery,您可以将两者留在页面的同一位置。jQuery(notOkSelector).hide();jQuery(okSelecter).show(); .

Hide使对象为display:none,而show则相反。

EDIT:只要对象已经在DOM中(默认为display:none;)…

显示notLoaded:

$(".FlashLoaded").hide(); // it doesn't hurt to hide an already hidden object.
var notLoaded = $(".FlashNotLoaded");
notLoaded.css( 'color', 'red' );
notLoaded.show();

隐藏notLoaded并显示ok:

$(".FlashNotLoaded").hide();
var flashLoaded = $(".FlashLoaded");
flashLoaded.show();
flashLoaded.css( 'color', 'green' );

编辑包括你上面的代码:你的代码可能看起来像这样…

function callbackfunk(e){
  $(".FlashLoaded").hide();
  $(".FlashNotLoaded").css("color", "red").show();
  var timer = setInterval(function(){
    if(e.ref.PercentLoaded() === 100){
        $(".FlashNotLoaded").hide();
        $(".FlashLoaded").css("color", "green").show();
        clearInterval(timer);
    }
  }, 1000);
}

这一行

$(".FlashLoaded").remove();

从DOM中删除元素,因此下面一行不能向DOM

添加任何内容。
$(".FlashLoaded").css("color", "green").append(ok);

我想你想要删除ok

是否添加了新的HTML标签?如果是这样,你可以使用jQuery replaceWiht(),它会用新元素替换现有元素。