Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

"Unable to get value of the property 'appendChild': object is null or undefined" while appending script to IE

When I try to append the following script to IE, I get this error:

"Error: Unable to get value of the property 'appendChild': object is null or undefined"

It works fine in Chrome, but when testing on IE9 this occurs. Can anyone tell me what the error is?

  // create script in document
    var fbScript = document.createElement("script");
    fbScript.type = "text/javascript";

    // make script source the facebook plugin
    fbScript.src = "http://connect.facebook.net/en_US/all.js#xfbml=1";



    // append script to appropriate tab
    document.getElementById('Tab' + tab_counter).appendChild(fbScript);
like image 682
user784756 Avatar asked Aug 24 '11 09:08

user784756


1 Answers

This can happen if your javascript code is running before all parts of HTML are loaded. Try to put this code in a function and fire it on an onload event. or use the more elegant jQuery onload event. It is something like this

$().ready(function () {
    var fbScript = document.createElement("script");
    fbScript.type = "text/javascript";

    // Make script source the facebook plugin
    fbScript.src = "http://connect.facebook.net/en_US/all.js#xfbml=1";

    // Append script to appropriate tab
    document.getElementById("Tab" + tab_counter).appendChild(fbScript);

});
like image 196
Saffar Avatar answered Nov 10 '22 08:11

Saffar