We would like to know how to add innerHTML before an element.
<!DOCTYPE html>
<html>
<body>
<div>Before foo</div>
<div id="foo"></div>
<div>After foo</div>
<script>
setTimeout(function() {<!--from w ww . j av a 2s .c o m-->
var yourHTMLString = "<span>hello, world</span><div></div>Foo<img src=\"http://www.java2s.com/style/download.png\" />Bar";
var foo = document.getElementById("foo");
var parent = foo.parentNode;
var helper = document.createElement('div');
helper.innerHTML = yourHTMLString;
while (helper.firstChild) {
parent.insertBefore(helper.firstChild, foo);
}
}, 500);
</script>
</body>
</html>
The code above is rendered as follows: