I've got a custom jQuery accordion menu on my small site inside a module, once the mod is enabled it breaks my RokSlideshow module.

I can not have them both to work on the same time frame.

The website is http://www.fbcsheffield.org/2.0

Any help could be much appreciated!

You need to pressure MooTools to load first, then load jQuery and tell it to enter No Conflict mode before any jQuery code or plug ins are performed. Check page 183 of the: http://www.packtpub.com/files/learning-joomla-1-5-extension-development-sample-chapter-8-using-javascript-effects.pdf or this thread around the Joomla forum: http://forum.joomla.org/viewtopic.php?f=231&t=283215

Edit: you really don't need to load MooTools first, you just need to make certain that jQuery.noConflict() is known as immediately after jQuery is loaded: http://www.designvsdevelop.com/jquery-in-joomla-i-was-wrong

make use of the jQuery NO CONFLICT MODE

Joomla buffers all quite happy with doctor_start(). You will get the present buffer with:

$body = JResponse::getBody();

After that you can discover the JQuery and MooTools script terms and restructure these questions system wordpress plugin while using "onAfterRender" event.

You should use preg_replace() to accept JQuery and set in after MooTools. After that you can let the no conflict mode in JQuery.

 jQuery.noConflict();

Here's a good example wordpress plugin that changes the MooTools from 1.1-to-1.2. That you can do something slimilar for JQuery's no conflict mode.

<?php
/**
 * MooTools1.2 w/ 1.1 compat for AjaxChat
 * @copyright www.fijiwebdesign.com
 * @author gabe@fijiwebdesign.com
 * @license http://www.gnu.org/copyleft/gpl.html GNU/GPL
 */

// included only
defined( '_JEXEC' ) or die( 'Direct Access to this location is not allowed!' );

jimport( 'joomla.plugin.plugin' );

/**
 * Joomla PHP Speedy Integration
 *
 * @author gabe@fijiwebdesign.com
 */
class  plgSystemAjaxchat extends JPlugin
{
    /**
     * Constructor
     *
     * For php4 compatability we must not use the __constructor as a constructor for plugins
     * because func_get_args ( void ) returns a copy of all passed arguments NOT references.
     * This causes problems with cross-referencing necessary for the observer design pattern.
     *
     * @access	protected
     * @param	object $subject The object to observe
     * @param 	array  $config  An array that holds the plugin configuration
     * @since	1.0
     */
    function plgSystemAjaxchat(& $subject, $config)
    {
    	parent::__construct($subject, $config);

    	$mainframe =& JFactory::getApplication();
    	$document	=& JFactory::getDocument();
    	$doctype	= $document->getType();

    	// deactivate for backend
    	if ($mainframe->isAdmin()) {
    		return false;
    	}

    	// add mootools 1.2
    	if ( $doctype == 'html' ) {
    		$document->addScript('components/com_ajaxchat/js/mootools-1.2-core.js');
    		$document->addScript('components/com_ajaxchat/js/mootools-1.2-more.js');
    		$document->addScript('components/com_ajaxchat/js/mootools-1.2-core-compat.js');
    		$document->addScript('components/com_ajaxchat/js/mootools-1.2-more-compat.js');
    	}

    }

    /**
     * After Templte output is in buffer
     */
    function onAfterRender() {

    	$mainframe =& JFactory::getApplication();
    	$document	=& JFactory::getDocument();
    	$doctype	= $document->getType();

    	// deactivate for backend
    	if ($mainframe->isAdmin()) {
    		return false;
    	}

    	// Only render for HTML output
    	if ( $doctype !== 'html' ) { 
    		return; 
    	}

    	// get the output buffer
    	$body = JResponse::getBody();

    	// remove mootools if not needed
    	if (stristr($body, 'mootools.js') || stristr($body, 'mootools-uncompressed.js')) {
    		$body = preg_replace("/<script.*?mootools(-uncompressed)?\.js.*?<\/script>/i", '', $body);
    	} else {
    		$body = preg_replace("/<script.*?mootools-1\.2\-.*?\.js.*?<\/script>[\s\t\r\n]*/i", "\n", $body);
    	}

    	JResponse::setBody($body);
    }

}

?>