国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

合并網頁中的多個script引用實現思路及代碼

2024-07-10 12:46:34
字體:
來源:轉載
供稿:網友
為了更好的進行封裝,每個實現不同功能的js代碼應該有自己的js文件,這樣如果一個網頁中引用了多個js文件,如下
代碼如下:
<script type="text/javascript" src="limit.js"></script>
<script type="text/javascript" src="select.js"></script>
<script type="text/javascript" src="rating.js"></script>

這樣網頁會向服務器發送3個請求,請求3個js文件,其實完全沒有必要發這么多的請求,一個足矣,下面就來介紹如何用Handler實現
新建一個HttpHandler
代碼如下:
public class Handler1 : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{//原文鏈接:blog.csdn.net/bluceyoung
string[] js = context.Request.Url.LocalPath.Substring(1, context.Request.Url.LocalPath.Length - 5).Split('.');
StringBuilder sb = new StringBuilder();
foreach (string j in js)
{
sb.Append(ReadFile(j+".js"));
}
context.Response.Write(CompressStr(sb));
}
private string ReadFile(string fileName)
{
string directory = @"D:/SRC/bluceyoung/";
if (!File.Exists(directory + fileName))
{
return "";
}
string result;
using (FileStream fs = new FileStream(directory + fileName, FileMode.Open))
{
using (StreamReader sr = new StreamReader(fs))
{
result = sr.ReadToEnd();
}
}
return result;
}
private string CompressStr(StringBuilder sb)
{
while (true)
{
int length = sb.Length;
sb.Replace(" ", " ");
if (length == sb.Length)
break;
}
sb.Replace("/r/n", "").Replace("/t", "").Replace("; ", ";").Replace(" }", "}").Replace("} ", "}").Replace(" ;", ";").Replace(" {", "{").Replace("{ ", "{");
return sb.ToString();
}
public bool IsReusable
{
get
{
return false;
}
}
}

配置文件中添加節點
代碼如下:
<configuration>
<system.web>
<compilation debug="true" targetFramework="4.0" />
<httpHandlers>
<add path="*.jsx" verb="*" type="BluceYoung.Handler1"/>
</httpHandlers><!--原文博客:blog.csdn.net/bluceyoung -->
</system.web>
</configuration>

頁面調用
代碼如下:
<script src="limit.select.rating.jsx" type="text/javascript"></script>

就這樣,一個script引用就完成了多個js文件的請求,并且對文件進行了壓縮處理
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 卢龙县| 连山| 大洼县| 中阳县| 田林县| 贵南县| 吉隆县| 宣武区| 青阳县| 博客| 霍山县| 余姚市| 陇南市| 郎溪县| 永宁县| 西平县| 云和县| 济源市| 内乡县| 平南县| 蒙自县| 宽甸| 深水埗区| 蛟河市| 蒙自县| 海伦市| 深泽县| 丹东市| 雷山县| 修武县| 正定县| 德清县| 永昌县| 衡阳市| 九台市| 阳城县| 新绛县| 楚雄市| 沅江市| 卢湾区| 北碚区|