jQuery replaceWith不适用于图像

时间:2014-02-21 20:10:15

标签: javascript jquery html jquery-selectors replacewith

我正在尝试选择一个图像,然后用div和替换图像替换该图像并在该div中替换div,但无济于事。

$("img[src='/brand/logo.png']").replaceWith("
    <div class=\"brander\">
        <img src=\"https:\/\/cache.graphicslib.brand.com/new-logo.png\">
        <div class=\"value-propositions\">Low price guarantee!</div>
    </div>
");

然而,似乎没有发生任何事情,我已经测试过选择器是否正在查找图像(使用下面的代码),它就是这样。我不确定选择器是否没有选择整个图像标签,或者我是否在其他地方发生错误。

if ($("img[src='/brand/logo.png']").length) {
    alert ("The selector works!");
}

欢迎任何输入。我对JS很新,所以我很高兴地欢迎所有的批评和建议。

1 个答案:

答案 0 :(得分:1)

看起来您的选择器可能无法正常工作。

var derp = $('img[src$="brand/logo.png"]').replaceWith(" \ <div class=\"brander\"> \ <img src=\"https:\/\/cache.graphicslib.brand.com/new-logo.png\"> \ <div class=\"value-propositions\">Low price guarantee!</div> \ </div>");

img[src$=是src'结尾'可能有帮助。 (注意\和新行,就是你可以像在javascript中那样换行)

http://jsfiddle.net/Mutmatt/TcE5c/12/