0

我已将此代码添加到我在 joomla 3.1 中的 default.php 文件中。

<?php
JHtml::_('jquery.framework');
JFactory::getDocument()->addScript(JURI::root().'template/mytemplate/js/jquery.min.js'); 
?>  

这只会将脚本嵌入到 head 标签中。

有没有办法让它出现在body标签中?

4

2 回答 2

0

正如我对另一个问题的评论中提到的,您不能使用or方法在<body>标签中导入 jQuery。这些方法会自动将脚本添加到标签中。JHtml()JFactory<head>

你可以实现你想要的唯一方法是使用<script>标签,但是请看看我是如何做到的:

<?php
  // load jQuery, if not loaded before
  if(!JFactory::getApplication()->get('jquery')){
     JFactory::getApplication()->set('jquery',true);
     ?>
     <script>
        jQuery.noConflict();
     </script>
     <script src="<?php echo JUri::root(). 'template/mytemplate/js/jquery.min.js'; ?>"></script>
<?php
  }
?>

这基本上检查是否已经导入了 jQuery,如果没有,则导入它。将此代码添加到模板文件夹中的index.php中。

如果您在index.php中看到以下内容:

JHtml::_('jquery.framework');

然后删除它。

请记住,这不是推荐的方法,但这是我所知道的在<body>标记后导入它的唯一方法。

另请注意,如果您更新了模板,那么您的更改将会丢失

于 2013-11-07T19:10:01.977 回答
0

你可以简单地说

?>
<script type="text/javascript" src="<?php echo JURI::root();?>templates/<?php echo $app->getTemplate();?>/js/jquery.min.js" />

进入你的模板 index.php

或者

?>
<script type="text/javascript" src="<?php echo JURI::root();?>templates/mytemplate/js/jquery.min.js" />

进入任何模板覆盖

我根本看不到这样做的好处。

于 2013-11-07T19:10:20.203 回答