4

要在 codeignitor 中加载外部 Javascript 文件,我正在使用

<script src="<?php echo base_url("application/js/contentslider.js"); ?>" type="text/javascript"></script>

我可以在页面的源代码中看到

<script src="http://localhost/cinifb_ci/application/js/contentslider.js" type="text/javascript"></script>

这意味着据我所知,对于我的 CSS 文件,该文件的加载方式非常相似,我使用过

<link rel="stylesheet" href="<?php echo base_url(); ?>application/css/default.css" type="text/css" />

并在页面的源代码中显示为

<link rel="stylesheet" href="http://localhost/cinifb_ci/application/css/default.css" type="text/css" />

这意味着它甚至可以完美加载。(单击源中显示的外部 js/css 链接403 Forbidden)。但是它们的效果都没有应用到页面上。它的显示没有错误。我已经在控制器中加载了 URL 帮助程序 $this->load->helper('url');

并放在$autoload['helper'] = array('url');autoload.php

你能解释一下我哪里出错了。

我了解到要加载外部 JS,我们需要安装 jquery-codeigniter 库。我已经下载了它们并将相应的文件包含在我的应用程序文件夹的相应类似文件夹中。

现在,当我尝试包含$this->load->library('jquery');在我的控制器中时,它的显示

An Error Was Encountered

Unable to load the requested class: jquery

因此,我请求您帮助我理解为什么 403 Forbidden 在我可以看到它指向 JS/CSS 文件的确切位置时显示,其次如果 jquery-codeigniter 库的安装错误,请指导我。
注意:http ://ellislab.com/codeigniter/user-guide/libraries/javascript.html没有帮助我

编辑:
我放置的 jquery-codeigniter 库system/libraries/javascript/

在系统 .htaccess 文件中,我写成

RewriteEngine on
RewriteRule ^$ /index.php [L]
RewriteCond $1 !^(index\.php|images|css|js|video_files|robots\.txt|favicon\.ico)
RewriteRule ^(.*)$ /cinifb_ci/index.php/$1 [L]

在我写的视图中

$this->load->helper('url');
<script src="<?php echo base_url("application/js/jquery-1.8.2.js"); ?>" type="text/javascript"></script>

在控制器中

$this->load->helper('url');
$this->load->library('javascript');
$this->load->library('javascript/jquery');
$this->load->library('Jquery_ext');

再次,如果我查看源它指向正确的源,但如果我单击外部 js 文件链接,它仍然显示403 Forbidden错误
抱歉冗长的帖子:(
请提出建议..!

4

3 回答 3

1

403 隐藏错误意味着 Web 服务器正在拒绝对该特定资源的请求。

我将假设您正在使用提供的 .htaccess 文件来获取漂亮的 url。

在这一行中

RewriteCond $1 !^(index\.php|images|robots\.txt)

让它读

RewriteCond $1 !^(index\.php|images|robots\.txt|application/js|application/css)

实际上,以上可能是错误的,无论如何,您需要将 css 和 js 文件夹添加到RewriteCond例外列表中

于 2013-03-22T12:14:37.107 回答
1

最好的方法是创建文件夹assets,然后你需要放css、图片、js等。

在此文件夹中保存 js/contentslider.js,最后在您的标题类型中保存:

<script type="text/javascript" src="<?php echo base_url();?>assets/css/js/contentslider.js"></script>

别忘了,你需要在 config.php 中设置 base_url()。

谢谢

于 2013-03-22T12:35:30.757 回答
0

如果您的文件在您的应用程序文件夹中,您应该将js文件夹包含在您的 .htaccess中,.htaccess然后将其复制并粘贴到应用程序文件夹之外意味着 root 然后打开它和我提到的过去代码,您只需要sample在第 3 行中更改名称与您的网站名称或您的主文件夹

    RewriteEngine on
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule .* index.php/$0 [PT,L]

更新

于 2013-03-22T13:09:13.647 回答