我已将此代码添加到我在 joomla 3.1 中的 default.php 文件中。
<?php
JHtml::_('jquery.framework');
JFactory::getDocument()->addScript(JURI::root().'template/mytemplate/js/jquery.min.js');
?>
这只会将脚本嵌入到 head 标签中。
有没有办法让它出现在body标签中?
我已将此代码添加到我在 joomla 3.1 中的 default.php 文件中。
<?php
JHtml::_('jquery.framework');
JFactory::getDocument()->addScript(JURI::root().'template/mytemplate/js/jquery.min.js');
?>
这只会将脚本嵌入到 head 标签中。
有没有办法让它出现在body标签中?
正如我对另一个问题的评论中提到的,您不能使用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>
标记后导入它的唯一方法。
另请注意,如果您更新了模板,那么您的更改将会丢失
你可以简单地说
?>
<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" />
进入任何模板覆盖
我根本看不到这样做的好处。