html – Chrome / Firefox内容脚本:在加载图片时隐藏似乎会破坏其他s与相同的src

我为Chrome和Firefox创建了一个插件,我现在注意到了一些奇怪的行为.

基本上,此扩展允许在某些webcomic站点上在普通视图和特殊“读取模式”之间切换.为此,它将使用CSS规则隐藏所有现有元素,并创建一个新的< img>插入到正文中的元素,并获取与现有< img>相同的URL集.最初展示漫画的元素.

现在我观察到的行为,顺便说一下,在两个浏览器中都会出现这样的情况:当你在图像仍在加载时切换模式时,会发生奇怪的事情:它看起来像是< img>之一.标签将继续工作(通常是图像开始加载的那个,但并非总是如此),但另一个标签将在用户停留在页面上的其余时间内继续显示“损坏的图像”图标.有趣的是,看起来这甚至可能发生在< img>切换模式时动态创建/删除(不仅显示/隐藏)的标记…

我认为这是一个非常奇怪的行为,我希望隐藏图像不会停止加载,或者暂停它并继续或重新启动它时另一个< img>显示具有相同src的标记,但不是那样的事情.

相关代码部分是:

var $s,$c;
var setState = function(readModeEnabled,allowScrolling) {
    if($s) {
        $s.remove();
        $s = null;
    }
    if($c) {
        $c.remove();
        $c = null;
    }
    if(readModeEnabled) {
        if(allowScrolling) {
            $s = "