向joomla模板添加javascript
我为joomla创建了一个基本模板。这是我的文件结构向joomla模板添加javascript,javascript,css,joomla,Javascript,Css,Joomla,我为joomla创建了一个基本模板。这是我的文件结构 templateDetails.xml index.php css/style.css js/main.js 在index.php中,我将这一行用于添加javascript和css <?php $doc = JFactory::getDocument(); $doc->addStyleSheet('templates/' . $this->template . '/css/style.css'); $doc->a
templateDetails.xml
index.php
css/style.css
js/main.js
在index.php中,我将这一行用于添加javascript和css
<?php
$doc = JFactory::getDocument();
$doc->addStyleSheet('templates/' . $this->template . '/css/style.css');
$doc->addScript('/templates/' . $this->template . '/js/main.js', 'text/javascript');
?>
css工作正常。但javascript不工作。有什么问题吗?请查看以下内容:
有多种方法可以做到这一点。从
addScript('/templates/
制作addScript('templates/
如果您在本地主机上工作,它将指向localhost/
而不是localhost/yourjoomla/
您应该使用JUri::root()
定义Joomla站点的根目录。定义Javascript文件路径时,还需要删除第一个/
,如下所示:
$doc = JFactory::getDocument();
$doc->addStyleSheet( JUri::root() . 'templates/' . $this->template . '/css/style.css');
$doc->addScript( JUri::root() . 'templates/' . $this->template . '/js/main.js');
如果您使用的是Joomla 2.5或更高版本,还可以使用以下内容:
JHtml::_('stylesheet', JUri::root() . 'templates/' . $this->template . '/css/style.css');
JHtml::_('script', JUri::root() . 'templates/' . $this->template . '/js/main.js');