Php 向Joomla中的JavaScript添加变量
这是我用来在Joomla网站上显示手风琴的脚本:Php 向Joomla中的JavaScript添加变量,php,jquery,xml,variables,joomla,Php,Jquery,Xml,Variables,Joomla,这是我用来在Joomla网站上显示手风琴的脚本: <?php defined('JPATH_BASE') or die(); gantry_import('core.gantryfeature'); class GantryFeatureAccordion extends GantryFeature { var $_feature_name = 'accordion'; function init() { global $gantry; if
<?php
defined('JPATH_BASE') or die();
gantry_import('core.gantryfeature');
class GantryFeatureAccordion extends GantryFeature {
var $_feature_name = 'accordion';
function init() {
global $gantry;
if ($this->get('enabled')) {
$gantry->addScript('accordion.js');
$gantry->addInlineScript($this->_accordion());
}
}
function render($position="") {
ob_start();
?>
<div id="accordion">
<dl>
<?php foreach (glob("templates/rt_gantry_j15/features/accordion/*.php") as $filename) {include($filename);} ?>
</dl>
</div>
<?php
return ob_get_clean();
}
function _accordion() {
global $gantry;
$js = "
jQuery.noConflict();
(function($){
$(document).ready(function () {
$('#accordion').easyAccordion({
slideNum: true,
autoStart: true,
slideInterval: 4000
});
});
})(jQuery);
";
return $js;
}
}
与templateDetails.xml文件中的类似:
<param name="accordion" type="chain" label="ACCORDION" description="ACCORDION_DESC">
<param name="slideNum" type="text" default="true" label="SlideNumber" class="text-short" />
<param name="autoStart" type="text" default="true" label="AutoStart" class="text-short" />
<param name="slideinterval" type="text" default="4000" label="SlideInterval" class="text-short" />
</param>
我怎样才能做到?同样的语法是什么
我对编程ans特别是JavaScript非常陌生
请帮忙。试试这个:
$cfgParams = &JComponentHelper::getParams( 'com_mycomponent' );
$js = "
jQuery.noConflict();
(function($){
$(document).ready(function () {
$('#accordion').easyAccordion({
slideNum: ".$cfgParams->get('slideNum', 'true').",
autoStart: ".$cfgParams->get('autoStart', 'true').",
slideInterval: ".$cfgParams->get('slideInterval', '4000')."
});
});
})(jQuery);
";
你很酷。谢谢你的回复。这是开箱即用的。再次感谢。
$cfgParams = &JComponentHelper::getParams( 'com_mycomponent' );
$js = "
jQuery.noConflict();
(function($){
$(document).ready(function () {
$('#accordion').easyAccordion({
slideNum: ".$cfgParams->get('slideNum', 'true').",
autoStart: ".$cfgParams->get('autoStart', 'true').",
slideInterval: ".$cfgParams->get('slideInterval', '4000')."
});
});
})(jQuery);
";