• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >ASP.NET > JS实现完美include加载功能代码

JS实现完美include加载功能代码

作者: 字体:[增加 减小] 来源:互联网 时间:2017-05-11

通过本文主要向大家介绍了js include,js中include,缺少对象include.js,js include的用法,include stdio.h 功能等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
js为什么需要include?让我们想想这样1个场景,a.js 需要用到1个公用的common.js,当然你可以在用到a.js的页面使用<script src="common.js">,但假设有5个页面用到了a.js,你是不是要写5遍<script。而且要是以后a.js 又需要引用common2.js,你是不是又的修改5个页面了?

已有js include的一些问题
  在写这个之前在网上搜索了些资料,发现以前写的include都存在2个问题,这也是include需要解决的比较重要的2个问题。
  1、相对路径的问题: 在a.js中使用include("../js/common.js"); include 函数中肯定是使用相对路径,是相对a.js的路径。而a.js在html中使用<script>嵌入有可能是相对路径,有可能是绝对路径。 include函数如何才能真正确定common.js的绝对路径,或者是相对html的相对路径。网上一些为了解决这个问题,还需要加一些js变量,不方便。
  2、引用的问题。 网上include函数的实现几乎都是使用下面2种方式插入common.js
      document.write("<script src='" + .. + "></script>")
    或者
      var s = document.createElement("script");
      s.src = ...;
      head.insertAfter(s,...);
    document.write 输出的脚本会在a.js后面加载,而createElement("script")创建的脚本是非阻塞加载。 所以如果在common.js加载完毕之前,a.js中调用了common.js的函数就会报错。

实现
  解决上面2个问题,就可以实现js include。
  第1个问题,我的方法是先获取到a.js在html中的绝对路径(如果是相对路径,就转为绝对路径),然后再把common.js的路径转为绝对路径。
  第2个问题,采用同步的ajax来请求common.js,这样就不会出现引用问题。

  实现代码如下:
[博客]: http://www.cnblogs.com/BearsTaR/ </div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • JS实现完美include加载功能代码

相关文章

  • 2017-05-11asp.net中的cookie使用介绍
  • 2017-05-11.net控件dropdownlist动态绑定数据具体过程分解
  • 2017-05-11如何为CheckBoxList和RadioButtonList添加滚动条
  • 2017-05-11ASP.NET之Response.Cookies.Remove 无法删除COOKIE的原因
  • 2017-05-11.Net Core 之 Ubuntu 14.04 部署过程(图文详解)
  • 2018-08-20ASP.NET Core 2.0 WebApi全局配置及日志实例
  • 2017-05-11c#生成缩略图不失真的方法实例分享
  • 2017-05-11asp.net 权限管理分析
  • 2017-05-11ASP.NET Web应用程序的安全解决方案浅析
  • 2017-05-11解决uploadify使用时session发生丢失问题的方法

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • asp.net(c#)判断远程图片是否存在
    • asp.net调用飞信免费发短信(测试有效)
    • ASP.NET MVC4入门教程(一):入门介绍
    • asp.net Web Services上传和下载文件(完整代码)第1/2页
    • 简析ASP.NET网站的创建与发布过程
    • asp.net下用Aspose.Words for .NET动态生成word文档中的图片或水印的方法
    • asp.net文件上传解决方案(图片上传、单文件上传、多文件上传、检查文件类型)
    • 把jQuery的each(callback)方法移植到c#中
    • VS2013设置护眼背景颜色
    • VB.net 查询获取数据库数据信息

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有