当前位置: 代码迷 >> Web前端 >> 增添动态Script和Style
  详细解决方案

增添动态Script和Style

热度:429   发布时间:2012-10-06 17:34:01.0
添加动态Script和Style

参考:http://wv1124.iteye.com/blog/486946

和:http://www.dumpling.hn.cn/blog/article.asp?id=116

但是第二个链接里面的很多都是错误的 要简单的修改后使用

添加动态Script

?

var ss = document.createElement('script');
var scr = 'alert("bah");';
if ('\v'=='v'){ // IE
    ss.text = scr;
} else { // Other Browser
    var tt = document.createTextNode(scr);
    ss.apendChild(tt);
}
var hh = document.getElementsByTagName('head')[0];
hh.appendChild(ss);

?

?外部文件

?

var js;
function include_js(file) {
    var html_doc = document.getElementsByTagName('head')[0];
    js = document.createElement('script');
    js.setAttribute('type', 'text/javascript');
    js.setAttribute('src', file);
    html_doc.appendChild(js);

    js.onreadystatechange = function () {
        if (js.readyState == 'complete') {
            alert('JS onreadystate fired');
        }
    }

    js.onload = function () {
        alert('JS onload fired');
    }
    return false;
}

?添加动态Style

?

var ss = document.createElement('style');
var def = 'body {color: red;}';
ss.setAttribute("type", "text/css");
if (ss.styleSheet) {   // IE
    ss.styleSheet.cssText = def;
} else {                // Other Browser
    var tt = document.createTextNode(def);
    ss.appendChild(tt);
}
var hh = document.getElementsByTagName('head')[0];
hh.appendChild(ss);

?外部文件

?

var css;
function include_css(css_file) {
    var html_doc = document.getElementsByTagName('head')[0];
    css = document.createElement('link');
    css.setAttribute('rel', 'stylesheet');
    css.setAttribute('type', 'text/css');
    css.setAttribute('href', css_file);
    html_doc.appendChild(css);

    // alert state change
    css.onreadystatechange = function () {
        if (css.readyState == 'complete') {
            alert('CSS onreadystatechange fired');
        }
    }
    css.onload = function () {
        alert('CSS onload fired');
    }
    return false;
}
  相关解决方案