をクリックしたときに
function fff() {
var ss = document.createElement('span');
var text = document.createTextNode('https://www.google.com/');
ss.appendChild(text);
document.getElementById('water').appendChild(ss);
}
function ff() {
var s = document.createElement('a');
var t = document.createTextNode("https://www.google.com/");
s.appendChild(t);
s.href = "http://example.com";
var item = document.getElementById('water');
item.replaceChild(s, item);
}
<body onload="fff()">
<span id="water"></span> <br><br>
<button onclick="ff()">Replace with anchor</button>
</body>
は、私はこれを取得します。あなたはspan#waterを置き換えたいので、親(それは<body>
です)を選択してreplaceChildを呼び出さなければなりません。あなたはffの最後の行をこれに変更するかもしれません
var body = document.body;
body.replaceChild(s, item);
また、より一般的な解決策として、 's.parentNode.replaceChild(...)' – CBroe