Javascript 删除子节点
我试图删除这里的string属性,但我想我没有对子节点的引用。 这应该如何工作Javascript 删除子节点,javascript,dom,svg,Javascript,Dom,Svg,我试图删除这里的string属性,但我想我没有对子节点的引用。 这应该如何工作 <!DOCTYPE HTML> <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1"> <script type="text/javascript"> var attrs = document.getElementB
<!DOCTYPE HTML>
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1">
<script type="text/javascript">
var attrs = document.getElementById('test-1');
attrs.removeAttribute('string');
</script>
<mask>
<mpath>
<font-face-format string="" id="test-1"></font-face-format>
</mpath>
</mask>
</svg>
var attrs=document.getElementById('test-1');
属性removeAttribute('string');
当它仍然不存在时,您试图引用它
尝试将脚本块移动到文档末尾,如
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1">
<mask>
<mpath>
<font-face-format string="" id="test-1"></font-face-format>
</mpath>
</mask>
<script type="text/ecmascript">
var attrs = document.getElementById('test-1');
attrs.removeAttribute('string');
</script>
</svg>
var attrs=document.getElementById('test-1');
属性removeAttribute('string');
当它仍然不存在时,您试图引用它
尝试将脚本块移动到文档末尾,如
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1">
<mask>
<mpath>
<font-face-format string="" id="test-1"></font-face-format>
</mpath>
</mask>
<script type="text/ecmascript">
var attrs = document.getElementById('test-1');
attrs.removeAttribute('string');
</script>
</svg>
var attrs=document.getElementById('test-1');
属性removeAttribute('string');
使用窗口。onload
以便在创建元素后执行代码。试试这个
<script type="text/javascript">
window.onload = function(){
var attrs = document.getElementById('test-1');
attrs.removeAttribute('string');
};
</script>
window.onload=函数(){
var attrs=document.getElementById('test-1');
属性removeAttribute('string');
};
使用窗口。onload
以便在创建元素后执行代码。试试这个
<script type="text/javascript">
window.onload = function(){
var attrs = document.getElementById('test-1');
attrs.removeAttribute('string');
};
</script>
window.onload=函数(){
var attrs=document.getElementById('test-1');
属性removeAttribute('string');
};
…因为,正如@André所指出的,当您调用getElementById()
时,您的
元素还不存在。您必须等待文档加载。如果调用getElementById()
,则DOMContentLoaded
不是更好吗?…因为正如@André所指出的,您的
元素还不存在。您必须等待文档加载。DOMContentLoaded
不是更好吗?我给了您+1,但现在我必须-1,因为您已将
放在
之外。把它移回去,你会再次得到+1。另外,请注意,SVG中
的正确mime类型是省略属性,或者使用text/ecmascript
:)Doctype毫无意义。我只是关注手头的问题,我没有检查我给你的整个代码+1,但现在我必须-1,因为你把
放在
之外。把它移回去,你会再次得到+1。另外,请注意,SVG中
的正确mime类型是省略属性,或者使用text/ecmascript
:)Doctype毫无意义。我只是关注手头的问题,没有检查整个代码。HTML5 Doctype不适合SVG文档。HTML5 Doctype不适合SVG文档。