it-swarm.dev

Modifica dell'ordine di javascript al caricamento

Ho scritto il mio modello e alcune parti del contenuto sono le seguenti:

<?php
// Add JavaScript Frameworks
JHtml::_('bootstrap.framework');
// Add Stylesheets
JHtmlBootstrap::loadCss();
// Load optional rtl Bootstrap css and Bootstrap bugfixes
JHtmlBootstrap::loadCss($includeMaincss = false, $this->direction);

?>
    <jdoc:include type="head" /> 

Per un file specifico devo caricare due file javascript che richiedono jQuery.

$document = JFactory::getDocument();
$document->addScript('js/jquery.uitablefilter.js');
$document->addScript('js/filterTable.js');

Anche se sono stati caricati prima di jQuery. ci sono molte domande su questo problema e anche molte risposte ma carica comunque javascript prima di jQuery.

Non so quale sia la ragione e come superarla.

2
zkanoca

Devi (pre) caricare i framework e i tuoi file JavaScript nel giusto ordine nelle tue estensioni. Il modello è troppo tardi e nulla è caricato per impostazione predefinita.

Esempio per il file tmpl di un modulo:

JHtml::_('bootstrap.framework'); // alternative only JQuery JHtml::_('jquery.framework');

JHtml::script('mod_yourmodule/yourmodule.js', false, true, false, false, false);

$document = JFactory::getDocument();
$document->addScriptDeclaration('
    jQuery( document ).ready(function(){
        alert(\'I am an alert box!\');
    });
');
1
schnuti

Hai considerato di provare quanto segue?

<jdoc:include type="head" />
<script src="js/jquery.uitablefilter.js" />
<script src="js/filterTable.js" />
0
Lodder