动态加载或执行js

Base.Script={
    
    create:
function(obj,contain,name)
    
{
        
if(!name)
        
{
            
var date=new Date();
            name
=date.getTime();
        }

        contain
=$(contain)?$(contain):document.body;
        
var script=document.createElement("script");
        script.id
=name;
        
if(typeof(obj)=="string")
        
{
            
var src=obj.match(/^<script[^>]+?scr=([^\s>]+)/i);
            
if(src)
            
{
                script.src
=src;
            }

            
else
            
{
                script.text
=obj;
            }

        }

        
if(typeof(obj)=="object")
        
{
            
if(obj.src)
                script.src
=obj.src;
            
else
                script.text
=obj.innerHTML;
        }

        contain.appendChild(script);
        
return name;
    }

}

//动态载入一个js文件
Base.Script.create({src:"/js/abc.js"})

//动态执行一个js块
<script type="text/javascript" id="js1">
alert(2);
</script>
Base.Script.create($("js"));

//动态插入一段脚本
Base.Script.create("alert(2)");

有什么不足之处请指出.......
posted @ 2008-07-16 10:26 轻风细雨 阅读(101) 评论(0)  编辑 收藏

标题  
姓名  
主页
Email (只有博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
该文被作者在 2008-07-16 10:42 编辑过