gpt4 book ai didi

codeigniter - JS 动态链接指向 root/in CI

转载 作者:行者123 更新时间:2023-12-02 03:22:22 25 4
gpt4 key购买 nike

我已经在我的 apache/localhost/ci_app/下的子目录中设置了我的 CI

现在/localhost/ci_app/assets/js/code.js 下有一些 JS 文件

在 code.js 中我动态加载脚本

(function(d, s, id){
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) {return;}
js = d.createElement(s); js.id = id;
js.src = "/assets/js/another_script.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'my_other_script'));

在 CI 配置中,我有 $config['base_url'] = '/ci_app/'; 但每次我加载页面时,我都会得到调用 http://localhost/assets 的脚本/js/another_script.js

我需要脚本指向 http://localhost/ci_app/assets/js/another_script.js

最佳答案

你可以通过两种方式做到这一点,

你的 js 脚本可以调用这个函数,它会给你你想要的基本 url

(function(d, s, id){
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) {return;}
js = d.createElement(s); js.id = id;
js.src = getBaseUrl() + "/assets/js/another_script.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'my_other_script'));

function getBaseUrl() {
var l = window.location;
var base_url = l.protocol + "//" + l.host + "/" + l.pathname.split('/')[1];
return base_url;
}

你可以像这样在配置中更改你的 base_url

$config['base_url'] = 'http://localhost/ci_app/';

它可以工作。

关于codeigniter - JS 动态链接指向 root/in CI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32407542/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com