在requireJS中,有一个属性叫baseURL,通过设置baseURL,我们可以将需要加载的文件路径写成相对于项目的,而不是相对于当前页面的。
例如:假设我们的项目目录是/myproject/,里面有两个页面,一个是/myproject/one.html,另一个是/myproject/html/other.html,他们都要加载/myproject/js/some.js。如果我们将baseURL设置成/myproject/,则我们在加载该js的时候,这两个页面都可以使用相对于项目的路径./js/some,而不是因为页面的路径不同而使用不同的相对路径。
但是如果不使用requireJS,我们能不能实现类似于baseURL的功能呢?
base标签
其实,HTML中有一个base标签,可以产生类似的功能。举个例子:
base标签可以给页面的链接加上默认的路径,或者默认的打开方式。
下面是一个设置默认打开方式的例子:
Chrome的加载正常。
Firefox的加载不正常。
Why?
这个我们并没有找到很好的解释,我们的分析是浏览器对资源加载进行了优化,导致动态插入base标签并未生效时,就预先去加载了,结果出错,然后base标签生效于是又加载正确的资源。
如何避免呢?不动态写入base标签那么就没有任何问题。如果需要动态写入base标签,那么页面所有引用的外部资源都需要通过Javascript动态加载。
瀑布流是当前一种比较流行的网站界面布局方式,参差不齐的多栏布局以及到达底部...
微软确认,Windows10 Build 19043.899(21H1)更新中,彻底从系统删除经典版Edge。...
正好遇到一个需求需要将字符串中特定的字符全部提取出来,这个如果是按常规的字...
(1)在 /head 之前加上下面一段代码:(得到 ewebeditor 中编辑的内容) script...
数据库 基本操作 1. 数据增添 2. 数据查询 a where b order by c 大于小于等于nu...
今天举一个例子解释一下inheritAttrs的使用 先看代码 bodydiv id="app" class="v...
本文转载自微信公众号「程序员内点事」,作者程序员内点事。转载本文请联系程序...
随着互联网应用的兴起,信息安全工作不可轻视! 作为远程终端维护管理的工具,win...
第五章:XML实例解析 提纲: 一:实例效果 二:实例解析 1.定义新标识。 2.建立X...
背景 最近,听到很多吐槽:看到源码,心中就感到十分纠结、特别烦恼。 为什么纠...