jquery - Browser Compatibility (Javascript) -
i'm rewriting scripts site in regular javascript speed color picker, if view in firefox , ie, doesn't work (but works fine in chrome). hoping help this:
https://www.sinister.ly/index.php
<div id="theme_styler"> <div class="option default" id="red"></div> <div class="option" id="green"></div> <div class="option" id="blue"></div> </div> the specific code seems problem:
var optionalstylesheet = document.getelementsbyclassname("stylesheet_optional"); var bluestylesheet = document.getelementbyid("stylesheet_blue"); var greenstylesheet = document.getelementbyid("stylesheet_green"); var storedthemecolor = readcookie('themecolor'); var currentficonpath; function changecolor(path) { var = document.getelementsbyclassname("ficon"); (var i=0, max=all.length; < max; i++) { all[i].src = all[i].src.replace(/ficons\/((green|blue)\/)?/, 'ficons/' + path + '/'); } } this in header:
// advertisement js document.getelementsbyclassname = function(cl) { var retnode = []; var elem = this.getelementsbytagname('*'); (var = 0; < elem.length; i++) { if((' ' + elem[i].classname + ' ').indexof(' ' + cl + ' ') > -1) retnode.push(elem[i]); } homecoming retnode; }; function readcookie(name) { var ca = document.cookie.split(';'); var nameeq = name + "="; for(var i=0; < ca.length; i++) { var c = ca[i]; while (c.charat(0)==' ') c = c.substring(1, c.length); //delete spaces if (c.indexof(nameeq) == 0) homecoming c.substring(nameeq.length, c.length); } homecoming null; } function setcookie(cname, cvalue, exdays) { var d = new date(); d.settime(d.gettime() + (exdays*24*60*60*1000)); var expires = "expires="+d.togmtstring(); document.cookie = cname + "=" + cvalue + "; " + expires; } var optionalstylesheet = document.getelementsbyclassname("stylesheet_optional"); var bluestylesheet = document.getelementbyid("stylesheet_blue"); var greenstylesheet = document.getelementbyid("stylesheet_green"); var storedthemecolor = readcookie('themecolor'); var currentficonpath; function changecolor(path) { var = document.getelementsbyclassname("ficon"); (var i=0, max=all.length; < max; i++) { all[i].src = all[i].src.replace(/ficons\/((green|blue)\/)?/, 'ficons/' + path + '/'); } } var gs = document.createelement("link"); gs.type = "text/css"; gs.classname = "stylesheet_optional"; gs.id = "stylesheet_blue"; gs.rel = "stylesheet"; gs.title = "mystyle"; gs.href = "images/sinisterly/color_blue.css"; var bs = document.createelement("link"); bs.type = "text/css"; bs.classname = "stylesheet_optional"; bs.id = "stylesheet_green"; bs.rel = "stylesheet"; bs.title = "mystyle"; bs.href = "images/sinisterly/color_green.css"; var head = document.getelementsbytagname("head")[0]; var links = head.getelementsbytagname("link"); for(var x=0; x<links.length; x++) { var href = links[x].href; if(href.indexof('/color_green.css') >0 || href.indexof('/color_blue.css') >0){ head.removechild(links[x]); } } if (storedthemecolor == "green"){ head.appendchild(bs); } else if (storedthemecolor == "blue") { head.appendchild(gs); } // end advertisement js and in footer
if (storedthemecolor == null) { setcookie('themecolor', 'default', 7); currentficonpath = ''; homecoming currentficonpath; } else if (storedthemecolor != null) { if (storedthemecolor == 'default') { currentficonpath = ''; optionalstylesheet.disabled = true; homecoming currentficonpath; } else if (storedthemecolor == 'blue') { currentficonpath = "blue"; changecolor(currentficonpath); optionalstylesheet.disabled = true; bluestylesheet.disabled = false; homecoming currentficonpath; } else if (storedthemecolor == 'green') { currentficonpath = "green"; changecolor(currentficonpath); optionalstylesheet.disabled = true; greenstylesheet.disabled = false; homecoming currentficonpath; } }
change:
var bluestylesheet = document.getelementbyid("#stylesheet_blue"); var greenstylesheet = document.getelementbyid("#stylesheet_green"); to:
var bluestylesheet = document.getelementbyid("stylesheet_blue"); var greenstylesheet = document.getelementbyid("stylesheet_green"); there's no # @ origin of stylesheet ids.
i don't know why it's working in chrome -- when seek undefined in chrome.
javascript jquery internet-explorer browser compatibility
No comments:
Post a Comment