我想將JS文件插入到視圖中,但它們按錯誤的順序插入。
在我default.thtml中我有這個
$this->Html->script(array(
'https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js',
'global'
), array('inline'=>false));
echo $this->fetch('script');
在我看來,我有這樣的:
$this->Html->script('jquery.fancybox.pack', array('inline' => false));
但當我查看源它出來是這樣的:
<script type="text/javascript" src="/js/jquery.fancybox.pack.js"></script>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script type="text/javascript" src="/js/global.js">
這顯然是錯誤的順序,所以jQuery插件無法正常工作。
我在做什麼錯?
這是我剛開始的,但我真的很喜歡把所有的東西放到'$ this-> fetch('script');'因爲它確保所有的CSS都是先出現的,然後是所有的JS。不是一些CSS然後一些JS然後一些CSS等。 – 472084 2012-03-28 14:32:12
不是在不同的塊中的CSS和腳本?無論如何你不能將它們分配給塊嗎? http://book.cakephp.org/2.0/en/views.html#using-blocks-for-script-and-css-files – jeremyharris 2012-03-28 14:54:35
我的意思是,如果你在你的視圖中回顯內聯CSS,它會在JS下面在佈局,我試圖保持所有的CSS第一---塊確實工作得很好,但我遇到的問題是在視圖中添加的JS文件添加在佈局中的JS文件之前,所以你不能有jQuery在每個視圖中的佈局和特定的插件,因爲插件將在jQuery調用之上。 – 472084 2012-03-28 15:21:13