c# - 如何确保异地 javascript 不会影响网站性能?

标签 c# javascript asp.net

我需要在我的页面上包含一个离线 javascript 文件,但是我不希望它影响我网站的性能,以防 javascript 所在的服务器出现故障或没有响应。

我想知道的是,是否可以使用 javascript 制作某种包装函数,以确保托管异地 javascript 的页面在可接受的时间范围内响应。

我考虑过将“延迟”属性添加到我包含 javascript 的位置,但据我所知,在页面的其余部分加载后,这仍然会使网站挂起。

如果在 javascript 中做不到,有什么好的替代方法吗?

我的网站是用 C# asp.net 制作的。

最佳答案

如果非现场 JavaScript 是自包含的 - 即您的任何脚本在正常运行之前都不依赖于加载它 - 解决方案可能非常简单。此示例使用 jQuery,但任何库(甚至没有库)都是可行的:

<div id="script-placeholder"></div>
<script type="text/javascript">
$(function(){
    $('.script-placeholder').append('<script type="text/javascript" src="http://site.com/file.js"></scr'+'ipt>');
});
</script>

这将等到整个页面加载完毕,然后插入一个新的 <script> block 插入空占位符 DIV,这将触发浏览器尝试下载脚本。如果远程服务器响应缓慢或已关闭,脚本仍将花费很长时间或超时,但它不会阻止您的用户在等待期间使用页面的其余

关于c# - 如何确保异地 javascript 不会影响网站性能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4078917/

相关文章:

c# - 如何从 DataGridView 中的行选择中获取最后选定行的索引

javascript - 渐进式WA : Do we have to add links to manifest to the header section of all website pages?

javascript - 悬停时显示提示信息

c# - 使用页面方法、Web 服务和自定义 http 处理程序执行 ajax 之间的区别

javascript - angular 2 文本输入使有意义的强制性

c# - Xamarin Android - WCF 错误异常无法反序列化 FaultDetail

c# - 成员的继承和可见性

javascript - 通过 jQuery 无限循环图像

c# - 数据源未添加到 ReportViewer

asp.net - .NET postback 让其他浏览器加载 IE 条件注释