后台跳转的页面动态加载js文件和css脚本

本文介绍了在网页中动态加载JavaScript和CSS文件及代码的多种方法。通过创建`<script>`和`<link>`元素,并利用JavaScript进行操作,可以实现按需加载资源,提升用户体验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

如果页面时从后台跳转来的,在jsp页面中不能直接引入js,需要动态加载

最简单最有效的办法就是写一个空jsp文件,只写js代码,跟业务页面放同一个目录,然后动态包含进来即可

<%@ include file="test-js.jsp" %>
 

=====当然也可以使用下面的办法===动态加载js文件
方法一:动态加载js文件
// 动态加载js脚本文件                               
function loadScript(url) {                          
    var script = document.createElement("script");  
    script.type = "text/javascript";                
    script.src = url;                               
    document.body.appendChild(script);              
}                                                   
// 测试                                             
loadScript("javascript/lib/cookie.js");    

写在jquery页面加载函数函数中,如

 $(function(){
     loadScript("${staticPath}/static/biz/testuser.js");   
 });        
方法二:动态加载js脚本
 // 动态加载js脚本                                                       
function loadScriptString(code) {                                        
    var script = document.createElement("script");                       
    script.type = "text/javascript";                                     
    try{                                                                 
        // firefox、safari、chrome和Opera                                
        script.appendChild(document.createTextNode(code));               
    }catch(ex) {                                                         
        // IE早期的浏览器 ,需要使用script的text属性来指定javascript代码。
        script.text = code;                                              
    }                                                                    
    document.body.appendChild(script);                                   
}                                                                        
// 测试                                                                  
var text = "function test(){alert('test');}";                            
loadScriptString(text);                                                  
test();   
动态加载css文件
方法一:动态加载css文件
// 动态加载css文件                                              
 function loadStyles(url) {                                     
     var link = document.createElement("link");                 
     link.type = "text/css";                                    
     link.rel = "stylesheet";                                   
     link.href = url;                                           
     document.getElementsByTagName("head")[0].appendChild(link);
 }                                                              
 // 测试                                                        
 loadStyles("css/secondindex.css");                                                                                            
方法二:动态加载css脚本
 // 动态加载css脚本                                                      
function loadStyleString(cssText) {                                      
    var style = document.createElement("style");                         
    style.type = "text/css";                                             
    try{                                                                 
        // firefox、safari、chrome和Opera                                
        style.appendChild(document.createTextNode(cssText));             
    }catch(ex) {                                                         
        // IE早期的浏览器 ,需要使用style元素的stylesheet属性的cssText属性
        style.styleSheet.cssText = cssText;                              
    }                                                                    
    document.getElementsByTagName("head")[0].appendChild(style);         
}                                                                        
// 测试                                                                  
var css = "body{color:blue;}";                                           
loadStyleString(css);                                                    

转载于:https://my.oschina.net/hfq/blog/995564

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值