Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQuery将带有图像的HTML加载到控制台中呈现错误_Jquery_Html_Image_Parsing_Exception - Fatal编程技术网

jQuery将带有图像的HTML加载到控制台中呈现错误

jQuery将带有图像的HTML加载到控制台中呈现错误,jquery,html,image,parsing,exception,Jquery,Html,Image,Parsing,Exception,当我试图加载一段简单的html(带有一些图像,但现在无法访问)时,jQuery出于某种原因试图加载它们,并在控制台中产生错误 以下是示例代码: var html = $('<div>' + '<img src="http://not.found/1.jpg"/>' + '</div>'); 如何防止jQuery尝试从html加载图像?如何: 使用var存储src并为映像分配一个id var src=”http://not.found/1.jpg“ 创建您的h

当我试图加载一段简单的html(带有一些图像,但现在无法访问)时,jQuery出于某种原因试图加载它们,并在控制台中产生错误

以下是示例代码:

var html = $('<div>' + '<img src="http://not.found/1.jpg"/>' + '</div>');
如何防止jQuery尝试从html加载图像?

如何:

  • 使用var存储src并为映像分配一个id

    var src=”http://not.found/1.jpg“

  • 创建您的html变量

    var html=$(''+'

  • 它是用于解析HTML的文档片段的一个“特性”。您需要实现(或使用)另一个解析器,而不是jQuery

    由于加载失败(Chrome 28),两个代码示例都会生成错误消息

    (函数(){
    var docFragment=document.createDocumentFragment();
    var img=document.createElement(“img”);
    img.src=”http://not.found/1.jpg";
    docFragment.appendChild(img);
    }());
    (功能(){
    var docFragment=document.createDocumentFragment();
    var div=document.createElement(“div”);
    docFragment.appendChild(div);
    div.innerHTML='';
    }());
    

    PS:insertAdjacentHTML的技巧与jQuery相同,它是DOM操纵器,但不是HTML字符串解析器

    为了执行任何操作,jQuery总是将传递的字符串转换为DOM,从而触发图像下载

    您应该研究纯HTML字符串解析器的库,这些库不需要转换为DOM

    例如(来自John Resig)
    或者

    如果您不想获取它,那么我相信您可能必须省略src属性。我只需要解析一些现有的html字符串(比如500行代码)。你们都在寻找解决原始问题的方法-jQuery在HTML解析过程中加载图像。我认为这是错误的行为。我不知道“损坏”的SRC或HTML中有多少图像标记。只需要拥有一部分已经存在的HTML,并且需要毫无例外地解析它。因此,这个答案无法解决问题d问题。
    GET http://not.found/1.jpg  jquery-2.0.3.js:5788
    x.extend.buildFragment jquery-2.0.3.js:5788
    x.extend.parseHTML jquery-2.0.3.js:493
    x.fn.x.init jquery-2.0.3.js:127
    x jquery-2.0.3.js:63
    (anonymous function)
    InjectedScript._evaluateOn
    
    (function () {
        var docFragment = document.createDocumentFragment();
        var img = document.createElement("img");
        img.src = "http://not.found/1.jpg";
        docFragment.appendChild(img);
    }());
    
    (function () {
        var docFragment = document.createDocumentFragment();
        var div = document.createElement("div");
        docFragment.appendChild(div);
        div.innerHTML = '<img src="http://not.found/1.jpg"/>';
    }());