在前端开发中有时需要将当前操作的dom对象修改为另一类对象,如:<button>Click</button>,点击button后,想要将<button>标签替换为<span>标签。通常的做法是修改button的parentNode的innerHTML,但是当button还有兄弟节点时,问题就显得比较复杂,你需要先将兄弟节点保存下来,同时记住button在所有子节点中的位置,然后再做修改。
1. IE提供了replaceNode接口使得问题解决起来简单多了。
语法:
oElement = object . replaceNode ( oNewNode )
参数:oNewNode 要替换的新节点
返回值:操作是否成功
2. 标准浏览器(Chorme、FF、Safari)对replaceNode,取而代之的是replaceChild接口
语法:
nodeObject.replaceChild(oNewNode ,oOldNode)
参数:
oNewNode 要替换的新节点, oOldNode被替换的节点
返回值:
操作是否成功
使用replaceChild虽然没replaceNode方便,但是相比修改innerHTML简单多了