私のウェブページにsvgがあります(私はphpを使用しています):
_<svg width="500px" height="500px" xml:lang="fr"
xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink">
<image width="500" height="500" xlink:href="img1.jpg" opacity="0.35" />
</svg>
_
リンクをクリックしたとき(およびWebページをリロードせずに)に_xlink:href
_変数を変更できるようにしたいと思います。
_<a href=#" onclick="changexlinkhref(img2.jpg)">change with img2</a>
_
しかし、js関数changexlinkhref(img){}
のコードがどうなるかわかりません(そして今のところ、プロジェクトでjqueryを使用していません)
ありがとう!
Img2.jpg引数を一重引用符で囲む必要があります。ページに画像要素が1つしかない場合は、このような方法で実行できます。
function changexlinkhref(value) {
document.querySelector("image").setAttributeNS('http://www.w3.org/1999/xlink', 'xlink:href', value);
}
Robert Longsonの回答に加えて、html5ではなくjsを介して値を設定する場合は、正しい名前空間でxlink:href
の代わりにhref
を設定する必要があります。
次のように設定する必要があります。
setAttributeNS('http://www.w3.org/1999/xlink', 'href', url);
xlink:href
減価償却されましたこれが現在機能しているものです。
….setAttribute('href', url);
明らかに、"href"
二重引用符付きでも機能します。