我无法让 jQuery UI Accordion 在我的一个非常简单的 CodeIgniter 视图中工作,不确定发生了什么,但我怀疑它与我链接文件的方式有关。我已经尝试了我能想到的所有可能的相对 URL 组合。
这是我的控制器,它加载我的标题视图,然后是主视图。这是有效的,因为我可以看到所有的 HTML,只是 jQuery 没有做它的事情:
控制器:
function __construct()
{
parent::__construct();
}
public function index()
{
$this->load->view('header');
$this->load->view('main');
}
}
我的 2 个观点:
标题视图
<!doctype html>
<html lang="en">
<head>
<title>my site</title>
<meta charset="UTF-8" />
<meta name="ROBOTS" content="ALL" />
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
<meta name="keywords" content="<?=fuel_var('meta_keywords')?>" />
<meta name="description" content="<?=fuel_var('meta_description')?>" />
<!-- Base Spider CSS -->
<link type="text/css" rel="stylesheet" href="<?php echo base_url(); ?>assets/css/sunny/jquery-ui-1.8.18.custom.css" />
<!-- [END] -->
<script src="<?php echo base_url(); ?>assets/js/jquery-1.7.1.min.js" type="text/javascript" charset="utf-8" />
<script src="<?php echo base_url(); ?>assets/js/jquery-ui-1.8.18.custom.min.js" type="text/javascript" charset="utf-8" />
<script>
$(function() {
$( "#accordion" ).accordion();
});
</script>
主视图
<body>
<div id="accordion">
<h3><a href="#">First header</a></h3>
<div>First content</div>
<h3><a href="#">Second header</a></h3>
<div>Second content</div>
</div>
</body>
</html>
当我回显我的 base_url() 时,我得到http://www.mywebsite.com/site1/ **
我的 CSS、JS 和其他资产在站点根级别的文件夹中 + assets + js + css + images
我确保这些文件夹都是可写的,不知道它还能是什么。控制器正在正确呈现视图并且 HTML 正在显示,只是没有 jQuery 操作。