根据环境在Javascript中设置资源的新绝对路径


Setting new absolute path of resources within Javascript depending on environment

我有一个外部javascript文件,它使用getScript()函数来运行另一个JS文件。

我在static.mydomain.com上都有。(我刚开始设置cdn)

getScript()似乎不允许跨域请求,因为我的HTML是在domain.com上。但后来我尝试使用相对路径根据这篇文章:动态url在CSS/JS

它适用于CSS,但不适用于JS(特别是在getScript()函数中)。这是怎么回事?在处理cdn时,有哪些方法可以缓解这个问题?

getScript方法实际上使一个ajax调用,因此它不工作的原因。除非您需要访问诸如"脚本是否成功找到"之类的内容,否则最好编写一个快速方法,如…

function addScript(source, domain) {
    $("head").append("<script src='"+ (domain ? domain + source : source) +"'></script>");
}

这将只是添加脚本到页面的头部,并允许您添加一个可选的域名指向,以防您想要更改它