Support

Forums

Contact Me

Posts Tagged 'jquery'

JQuery

jQuery is a cross-browser JavaScript library designed to simplify the client-side scripting of HTML. It was released in January 2006 at BarCamp NYC by John Resig. [http://en.wikipedia.org/wiki/JQuery]

Joomlacomment 4.0 jQuery optimization

joomla_cms

jocomment I did install yesterday evening the latest version of !JoomlaComment

!JoomlaComment is one of the first extensions for Joomla,that let you comment under articles.

The !JoomlaComment system can be installed on any joomla website within seconds! Make
your website more interactive!

Main Features:

  • ajax-based
  • captcha protection
  • akismet support
  • ubb code support
  • threathed/nested comments
  • multilanguage support
  • mail, website input
  • See more features here

Joomla support templates, depending on which templates you use

  • MTdefault-emotop, these templates MTxxxx use mootols 1.11
  • JQdefaut-emotop, these templates JQxxxx use Jquery
  • ..

You may behind the scene include another additional AJAX library in Joomla!® frontend, this lead to performance issues:

If !JoomlaComment use JQuery 1.1.4 and not the AJAX library of Joomla!, aka Mootools 1.11. Another huge JavaScript files that make my server busier!

Since any static files can be offloaded to another server to gain more speed. For example, any static images, JavaScript or CSS files can be moved to a different server for more speed.

In order to be able to offload this JavaScript library to Google code, you’ll have to do the following:

In the template you are using, for example in components/com_comment/joscomment/templates/JQdefault-emotop/index.html

Search for

{library}
<script type="text/javascript" src="components/com_comment/joscomment/jscripts/jquery-1.1.4.pack.js"></script>
<script>jQuery.noConflict();</script>
{/library}

and replace with

{library}
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script> 
<script>jQuery.noConflict();</script>
{/library}

Note that I use here the latest JQuery version (1.3.2) and not the default version of !joomlaComment (1.1.4), here is why

Joomla Mootools and jQuery Compatibility

In this series of post I will outline some common techniques to help Joomla extensions development.

As you know Joomla is shipped with Mootools library which assign $ also to Ajax. Here is 2 tips that will allow you to use jQuery scripts without any modifications (most of the time you will find tips to assign jQuery to something else than $ and rewrite your scripts)

First it is recommended to include always mootools first to avoid jQuery conflict issues

JHTML::_('behavior.mootools');
$document = JFactory::getDocument();
$document->addScript(JURI::root() . "media/com_cedtag/js/jquery.1.7.2.min.js");

then to run jQuery in noConflict mode. Note that here I do not assign jQuery to any alias.

$document->addScriptDeclaration("jQuery.noConflict();");

Till here, this is what you will find on all Joomla forums, posts over the internet. The last tips is what make the difference!

Instead of using a different alias for the jQuery object (when using noConflict), you can write your jQuery code by wrapping it all in a closure. This can be done in the document.ready function

$script = "jQuery(function($) { $();

});"; $document->addScriptDeclaration($script);

This way you are not force to rewrite your scripts to use another alias (replacing $ with jquery alias for example in all your scripts). This make inclusion of jQuery really easy!

Happy Coding!

Donations

Thank You for supporting my work