我有一个前端组件视图,我需要在头文件中包含一个.js文件(头文件由Joomla生成,而不是在default.php中进行硬编码)。前端组件文件是mysite.com/components/com_arrcard/views/tmpl/default.php;该javascript文件位于mysite.com/administrator/components/com_arrcard/js/CalendarPopup.js。
下面是我在尝试如default.php:
$document =& JFactory::getDocument();
$popUrl = JURI::root(true).'/website/documents/ccv.html';
$popImage = JURI::root(true).'/website/documents/cv_card.jpg';
$popPhone = JURI::root(true).'/website/documents/phone.html';
$document->addScript(JURI::root(true).'/administrator/components/com_arrcard/js/CalendarPopup.js');
的$ popImage和$ popPhone变量得到正确设置,但没有被添加脚本 - 当我在看呈现页面的源代码, CalendarPopup.js不在任何地方。
任何人都可以帮我吗?我在这里做错了什么?我也试过
$document->addScript('administrator/components/com_arrcard/js/CalendarPopup.js');
这也行不通。将管理员com_arrcard组件中的视图中包含完全相同的文件时,addScript代码可以正常工作。 addScript的工作方式有一些限制吗?
的JHTML ::脚本没有工作;我在joomla开发谷歌组得到了相同的答案。我很好奇为什么当addScript没有时它会工作;每种方法何时可用都存在某种限制吗? – EmmyS 2010-11-17 15:00:57
我不确定。我以前成功使用过这两个。你有没有尝试把硬编码的网址,而不是使用JURI :: root()? – Martin 2010-11-17 15:20:23
是的,同样的事情发生。我之前也使用过这两种方法,所以我不确定为什么一个人在另一个不在的地方工作。 – EmmyS 2010-11-17 17:46:39