Back to top

Autore Topic: qual'è il modo corretto per includere jquery in joomla2.5?  (Letto 1032 volte)

Offline baldo

  • Esploratore
  • **
  • Post: 65
  • Sesso: Maschio
    • Mostra profilo
ciao a tutti

come da titolo, qual'è il modo corretto per includere jquery  in joomla2.5?

innanzitutto quali sono le possibilità a disposizione ?

le uniche che conosco sono:
  • $document->addScript();
  • <script> getScript('//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js',function() {
  • includere dal master templatedella pagina
attualmente sto utilizzando questo script all'inizio del template di una vista
\components\com_<nomecomponente>\views\<nomevista>\tmpl\default.php
$document = &JFactory::getDocument();
$document->addScript(JUri::root(true)  . '/media/system/js/jquery/jquery-1.10.0.min.js' );
$document->addCustomTag( '<script type="text/javascript">jQuery.noConflict();</script>' );

il problema è che questo metodo è sconsigliato dalla documentazione ufficiale (perchè?)
http://docs.joomla.org/Adding_JavaScript_and_CSS_to_the_page
Citazione
$document->addScript($url);
Note this will **NOT** include Mootools or jQuery.
in effetti nella pagina in cui includo jquery ho creato una select dinamica e ogni tanto non funziona, si deve ricaricare pagina, ma non sono sicuro che la causa sia il metodo di inclusione di jquery, devo indagare,
ma se questo modo è sconsigliato qual'è il metodo consigliato?



in un componente ho trovato questo script sempre nel tempate della vista
\components\com_<nomecomponente>\views\<nomevista>\tmpl\default.php
Codice: [Seleziona]
<script type="text/javascript">
    function getScript(url,success) {
        var script = document.createElement('script');
        script.src = url;
        var head = document.getElementsByTagName('head')[0],
        done = false;
        // Attach handlers for all browsers
        script.onload = script.onreadystatechange = function() {
            if (!done && (!this.readyState
                || this.readyState == 'loaded'
                || this.readyState == 'complete')) {
                done = true;
                success();
                script.onload = script.onreadystatechange = null;
                head.removeChild(script);
            }
        };
        head.appendChild(script);
    }
    getScript('//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js',function() {
        js = jQuery.noConflict();
        js(document).ready(function(){
            js('#form-prevrichiesta').submit(function(event){
                 
            });
       
           
        });
    });
   
</script>
« Ultima modifica: 04 Giu 2013, 21:37:15 da baldo »
semplicità ... al sol nominarla sembra svanire

 



Web Design Bolzano Kreatif