非常に単純なCodeIgniterビューの1つでjQueryUIアコーディオンを機能させることができません。何が起こっているのかわかりませんが、ファイルのリンク方法に関係があると思われます。私は考えられる相対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、その他のアセットは、サイトのルートレベルのフォルダーにあります+アセット+ js +css+画像
フォルダがすべて書き込み可能であることを確認しましたが、他に何ができるかはわかりません。コントローラはビューを正しくレンダリングしており、HTMLが表示されていますが、jQueryアクションは表示されていません。