我在joomla 3.1中将下面的代码添加到我的默认.php文件中。
<?php
JHtml::_('jquery.framework');
JFactory::getDocument()->addScript(JURI::root().'template/mytemplate/js/jquery.min.js');
?>
这仅将脚本嵌入到 head 标签中。
有没有办法让它出现在正文标签中?
你可以
简单地把
?>
<script type="text/javascript" src="<?php echo JURI::root();?>templates/<?php echo $app->getTemplate();?>/js/jquery.min.js" />
放入模板索引中.php
或
?>
<script type="text/javascript" src="<?php echo JURI::root();?>templates/mytemplate/js/jquery.min.js" />
到任何模板覆盖
不过,我根本看不出这样做有什么好处。
正如我在对另一个问题的评论中提到的,你不能使用 JHtml()
或 JFactory
方法在 <body>
标签中导入 jQuery。这些方法会自动将脚本添加到<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是否已经导入,如果没有,那么它导入它。将此代码添加到模板文件夹中的索引.php。
如果您在索引中看到以下内容.php:
JHtml::_('jquery.framework');
然后删除它。
请记住,这不是推荐的方法,但这是我所知道的唯一在<body>
标签之后导入它的方法。
另请注意,如果您更新模板,那么您所做的更改将丢失