Help Center Troubleshooting Problems with Ad Serving

What is "Object Expected" error in Internet Explorer?

If an ad shows up properly in Firefox, Safari, Opera but it shows an error "Object Expected" in Internet Explorer, you need to verify the ad code. This error usually happens in the following scenario. An HTML file contains an inline JavaScript to load remote.js and call a function in remote.js
<script text="text/javascript">
<![CDATA[
alert('Before loading remote.js');
document.write('<sc'+'ript type="text/javascript" src="remote.js"><\/script>');
alert('After loading remote.js');

// call a remote function that should be already be declared
document.write('<sc'+'ript type="text/javascript">remoteFunction();<\/script>');
]]>
</script>
And in the file remote.js:
function remoteFunction() {
   alert('In remote function');
}
You would expect the output in this order:
  1. Before loading remote.js
  2. After loading remote.js
  3. In remote function
IE gives an error message "Object Expected" because it calls the function remoteFunction() prematurely. It calls before loading the file remote.js, which contain the declaration of remoteFunction(). This is another unexpected behavior from IE. Fortunately, it can be corrected by adding the attribute defer="defer" to second script invocation. This will specifically prevent IE from executing in order to give a correct output. Other browsers are not affected by the change.

Other Articles in Problems with Ad Serving

Instructions to troubleshoot and correct issues with ad serving

Cannot find an answer for your question? Ask our Customer Care team

Related