0

When I open the console in http://ganeshgrow.es, I find these errors: http://gyazo.com/08e16657ef89f7c8ee0423fcc57b44fb

Do you know what could it be? I have already installed JQuery Easy and JCH Optimize.
So, I guess it's not a jquery conflict...

Thanks for helping

  • 1
    To make your questions better, please add images directly to the questions. Not having everything together in one place discourages people from answering and increases the possibility of link rot. – TryHarder Apr 18 '15 at 11:50
1

JQuery is loaded after the K2 javascript which requires JQuery.

Installing a plugin, doesn't mean it will fix automagically all kind of issues you probably have. After a quick look at your site, I noticed that you are loading lots of stuff there. Too many javascripts, css, fonts.

At first, review all extensions you have installed in your site. Do you need all of them ? Are you actually using all of them ? Uninstall those you don't need, or check their settings if they have options to load javascript which can be adjusted.

Then, try to tweak the jQuery Easy plugin settings, with the hope that you will be able to optimize the js loading of your site - but with all this stuff, it might not be easy.

Update:

There is no best way to configure the plugin. As said you have too many javascript files loading and you should find the right balance and order to load them. But regarding the first error you see in your console, you need to make sure that jQuery is loading before K2 javascript.

JQueryEasy Plugin Help:

  • What's the best way to configure Jquery easy plugin? I have this: gyazo.com/c1cc37bbb33611061c3c592c71577187 – Antonio Feb 17 '15 at 10:01
  • @Antonio: There is no best way to configure the plugin. As said you have too many javascript files loading and you should find the right balance and order to load them. This would require direct dealing with your site. Follow my recommendation to review your extensions first and disable/remove those you don't need. It will make it easier to work in fine-tuning js conflicts and optimizing your site. Regarding JQueryEasy plugin, find in the answer above links that might help you dealing with your issues. – FFrewin Feb 17 '15 at 10:14
  • What I don't know is... should I keep KS enabled? – Antonio Feb 17 '15 at 10:47
  • I assume with KS you mean K2 - it looks like you don't use it on your site- but you are the one who knows better. If you don't use it (check in Components -> K2, if you have any content)- then remove it. In this case make sure you remove its complimentary plugins and modules as well. – FFrewin Feb 17 '15 at 10:54
1

Based on @FFrewin answer.

You can in fact re-order the scripts how they load, however with a little code hack. An example is shown below for loading MooTools before jQuery. Same method can be applied to any script here.

Just add another if block with the script which is loading before jQuery. You can find the script name from page view source, disable jQuery Easy first and see the actual url. You can add this code just before the head is echoed in your template index.php file.

    /************* JQUERY HACKS **********************/
            $document = JFactory::getDocument();
    $headData = $document->getHeadData();
    $scripts = $headData['scripts'];
    $scripts2 = array();

    if(isset($scripts['/media/system/js/mootools-core.js']))
    {
        $scripts2['/media/system/js/mootools-core.js'] = $scripts['/media/system/js/mootools-core.js'];
        unset($scripts['/media/system/js/mootools-core.js']);
    }

    if(isset($scripts['/media/jui/js/jquery.min.js']))
    {
        $scripts2['/media/jui/js/jquery.min.js'] = $scripts['/media/jui/js/jquery.min.js'];
        unset($scripts['/media/jui/js/jquery.min.js']);
    }

    if(isset($scripts['/media/jui/js/jquery-noconflict.js']))
    {
        $scripts2['/media/jui/js/jquery-noconflict.js'] = $scripts['/media/jui/js/jquery-noconflict.js'];
        unset($scripts['/media/jui/js/jquery-noconflict.js']);
    }

    if(isset($scripts['/media/jui/js/jquery-migrate.min.js']))
    {
        $scripts2['/media/jui/js/jquery-migrate.min.js'] = $scripts['/media/jui/js/jquery-migrate.min.js'];
        unset($scripts['/media/jui/js/jquery-migrate.min.js']);
    }

    $scripts = array_merge($scripts2, $scripts);
    $headData['scripts'] = $scripts;
    $document->setHeadData($headData);
    /************ JQUERY HACKS ***********************/

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.