动态引入js/cs
新一篇: 关于IE、Firefox、Opera页面呈现异同
<script type="text/javascript">function StorePage(){d=document;t=d.selection?(d.selection.type!='None'?d.selection.createRange().text:''):(d.getSelection?d.getSelection():'');void(keyit=window.open('http://www.365key.com/storeit.aspx?t='+escape(d.title)+'&u='+escape(d.location.href)+'&c='+escape(t),'keyit','scrollbars=no,width=475,height=575,left=75,top=20,status=no,resizable=yes'));keyit.focus();}</script>有时候需要在网页中某个div载入之后,动态引入一段javascript,IE下的解决方案:
CODE:
-
newjs. onreadystatechange = function ( ) {
-
if (newjs. readyState == 'loaded' ) {
-
// ready!
-
}
-
}
-
-
newjs. onload = function ( ) {
-
// ready!
-
}
主要利用了onload以及onreadystatechange事件。把这个加以利用,也能动态载入外部css。下面是同时适合Ie/firefox的写法。
CODE:
-
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;
-
}
-
-
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;
-
}
这里是Demo,有动态载入css以及js的例子。