javascript - How to load in an external CSS file dynamically? -


i'm trying create dynamic page using external .css pages page color changed. below code. when click href, not getting output. can please tell what's problem in code?

<script language="javascript"> function loadjscssfile(filename, filetype) {     if (filetype=="css")     {          var fileref=document.createelement("link")         fileref.setattribute("rel", "stylesheet")         fileref.setattribute("type", "text/css")         fileref.setattribute("href", filename)     }     if (typeof fileref!="undefined")         document.getelementsbytagname("head")[0].appendchild(fileref) }  loadjscssfile("mystyle.css", "css")  </script> <a href="javascript:loadjscssfile('oldstyle.css','css')">load "oldstyle.css"</a>  

i have modified code below. still i'm facing problem in getting output. no result. can please me out?

<head> <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" /> <link rel="stylesheet" type="text/css" href="css/newstyle.css" /> <script language="javascript" type="text/javascript"> function loadjscssfile(filename, filetype) {     if (filetype=="css")      {         var fileref = document.createelement("link");         fileref.rel = "stylesheet";         fileref.type = "text/css";         fileref.href = "filename";         document.getelementsbytagname("head")[0].appendchild(fileref)     } } loadjscssfile("oldstyle.css", "css")  </script> <a href="javascript:loadjscssfile('oldstyle.css','css')">load "oldstyle.css"</a>  </head> 

tim goodman's answer correct, instead of fileref.href = "filename"; should fileref.href = filename;

otherwise you're trying load file name "filename" rather passed script.

alternately, if you're willing use jquery library, can accomplished in 1 line:
$("head").append("<link rel='stylesheet' id='extracss' href='"+filename+"' type='text/css' />");

also, first version of script using setattribute: browsers take setattribute empty third parameter because of way spec set up:
fileref.setattribute("href", filename, "");


Comments

Popular posts from this blog

ruby - When to use an ORM (Sequel, Datamapper, AR, etc.) vs. pure SQL for querying -

php - PHPDoc: @return void necessary? -

c++ - Convert big endian to little endian when reading from a binary file -