質問

次のHTMLコード

があります。
<div>
    <a id="cover"></a>
    <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="100%" height="100%" viewBox="0 0 510 680">
    <rect x="0" y="0" fill="#000007" width="510" height="680"/>
    <image width="510" height="680" xlink:href="../images/MSRCover.png" transform="translate(0 0)" />
    </svg>
</div>
.

jQueryでイメージのパスを変更しようとしていて、画像は黒くなります。

$ = cheerio.load(data);
$('image').each(function()
{
    var $img    = $(this);
    $(this).attr('xlink:href','My PATH').html();
});
.

Node.jsとモジュールhearioを使用しています。

ありがとう

役に立ちましたか?

解決

jQuery .attrメソッドは名前空間を理解していません。代わりに通常のDOM SetAttributensを使用してください。

$(this)[0].setAttributeNS('http://www.w3.org/1999/xlink', 'xlink:href', "My PATH");
.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top