我有一個網站使用URL重寫,所以我必須直接引用資源,而不是通過相對URL。我通常通過將網站url附加到href的開頭來完成此操作。燈箱包含圖像通過URL
例子:
<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反映了當前的URL爲每config.php文件。我怎樣才能得到SITE_URL常量的JavaScript文件?
我會在我的頁面的ondocumentready中初始化我的燈箱腳本,並將相關選項傳遞給初始化,例如, 'initLightbox({baseurl:<?php echo json_encode($ site_url)?>}};'(編輯過的:使用json_encode()添加引號和轉義斜線) – thaJeztah