我有一个使用 URL 重写的站点,因此我必须直接引用资源,而不是通过相对 URL。我通常通过将站点 url 附加到 href 的开头来做到这一点。
例子:
<script src="<?php echo SITE_URL ?>lightbox/js/lightbox.js"></script>
问题是在 lightbox.js 中图像是相对加载的:
function LightboxOptions() {
this.fileLoadingImage = 'images/loading.gif';
this.fileCloseImage = 'images/close.png';
this.resizeDuration = 700;
this.fadeDuration = 500;
this.labelImage = "Image";
this.labelOf = "of";
}
我意识到我可以这样做:
this.fileLoadingImage = 'http://www.example.com/images/loading.gif';
但它不符合我从上下文中抽象资源的想法。我想要它,所以如果我在我的配置文件中修改站点 URL,它也会显示在 lightbox.js 文件中。我对Javascript一无所知,所以这让我很沮丧。
更可接受的是:
this.fileLoadingImage = site_url + '/images/loading.gif';
其中 site_url 根据 config.php 反映当前 url。如何获取 javascript 文件的 SITE_URL 常量?