You can’t use document.write
once the document has completed loading. If you do, the browser will open a new document that replaces the current.
Use the innerHTML
property to put HTML code inside an element:
function gen_output(ad_content){
document.getElementById('mb_ad').innerHTML = ad_content;
}
Put the element before the script, so that you are sure that it exists when the callback function is called:
i am text before
<div id="mb_ad"></div>
i am text after
<script type="text/javascript" src="https://stackoverflow.com/questions/2360076/mb.js"></script>
It doesn’t matter much where you place the script, as nothing will be written to the document where it is.