Affichage des tabulations dans Beez5

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • [Problème] Affichage des tabulations dans Beez5

    Salut à tous,

    Je travaille avec Beez5 sous Joomla 1.6.3

    La fonction qui est responsable de l'affichage des modules en tabulations est la fonction suivante qui existe dans le fichier: nom-site\templates\beez5\html\modules.php et voici son code:
    Code:
    function modChrome_beezTabs($module, $params, $attribs)
    
    {
    	$area = isset($attribs['id']) ? (int) $attribs['id'] :'1';
    	$area = 'area-'.$area;
    
    	static $modulecount;
    	static $modules;
    
    	if ($modulecount < 1) {
    		$modulecount = count(JModuleHelper::getModules($attribs['name']));
    		$modules = array();
    	}
    
    	if ($modulecount == 1) {
    		$temp = new stdClass();
    		$temp->content = $module->content;
    		$temp->title = $module->title;
    		$temp->params = $module->params;
    		$temp->id=$module->id;
    		$modules[] = $temp;
    		// list of moduletitles
    		// list of moduletitles
    		echo '<div id="'. $area.'" class="tabouter"><ul class="tabs">';
    
    		foreach($modules as $rendermodule) {
    			echo '<li class="tab"><a href="#" id="link_'.$rendermodule->id.'" class="linkopen" onmouseover="tabshow(\'module_'. $rendermodule->id.'\');return false">'.$rendermodule->title.'</a></li>';
    		}
    		echo '</ul>';
    		$counter=0;
    		
    		// modulecontent
    		foreach($modules as $rendermodule) {
    			$counter ++;
    
    			echo '<div tabindex="-1" class="tabcontent tabopen" id="module_'.$rendermodule->id.'">';
    			echo $rendermodule->content;
    			if ($counter!= count($modules))
    			{
    			echo '<a href="#" class="unseen" onmouseover="nexttab(\'module_'. $rendermodule->id.'\');return false;" id="next_'.$rendermodule->id.'">'.JText::_('TPL_BEEZ2_NEXTTAB').'</a>';
    			}
    			echo '</div>';
    		}
    		$modulecount--;
    		echo '</div>';
    	} else {
    		$temp = new stdClass();
    		$temp->content = $module->content;
    		$temp->params = $module->params;
    		$temp->title = $module->title;
    		$temp->id = $module->id;
    		$modules[] = $temp;
    		$modulecount--;
    	}
    }
    Ce que j'ai fait, c'est que j'ai créé trois modules de type CustomHTML: WhyChooseUs, Services et Our References pour les afficher en tabulations(j'utilise la position-13 du module), mais l'affichage au premier accès au site est incorrect (voir image-1 ci-jointe)...en fait trois zones de contenu s'affichent toutes ensemble, mais dès que je passe la souris sur l'une des tabulations, l'affichage devient correct(voir image-2)...

    image-1: Cliquez sur l'image pour l'afficher en taille normale

Nom : image-1.jpg 
Affichages : 1 
Taille : 10,1 Ko 
ID : 1814098
    image-2:Cliquez sur l'image pour l'afficher en taille normale

Nom : image-2.jpg 
Affichages : 1 
Taille : 6,0 Ko 
ID : 1814099

    Comment corriger ça???j'ai essayé de jouer sur le code de la fonction mais sans résultat...

    Merci d'avance à tous...
    Dernière édition par poppins à 27/07/2011, 14h06

  • #2
    Re : Affichage des tabulations dans Beez5

    Je vous transmet les codes des fonctions tabshow et nexttab:

    Code:
    function [COLOR="red"][B]tabshow[/B][/COLOR](el) {
    	var outerdiv = $(el).getParent();
    	outerdiv = outerdiv.getProperty('id');
    
    	var alldivs = $(outerdiv).getElements('div.tabcontent');
    	var liste = $(outerdiv).getElement('ul.tabs');
    
    	$(liste).getElements('a').setProperty('aria-selected', 'false');
    
    	alldivs.each(function(element) {
    		$(element).addClass('tabclosed').removeClass('tabopen');
    		$(element).setProperty('aria-hidden', 'true');
    		$(element).setProperty('aria-expanded', 'false');
    	});
    
    	$(el).addClass('tabopen').removeClass('tabclosed');
    	$(el).setProperty('aria-hidden', 'false');
    	$(el).setProperty('aria-expanded', 'true');
    	$(el).focus();
    	var getid = el.split('_');
    	var activelink = 'link_' + getid[1];
    	$(activelink).setProperty('aria-selected', 'true');
    	$(liste).getElements('a').addClass('linkclosed').removeClass('linkopen');
    	$(activelink).addClass('linkopen').removeClass('linkclosed');
    }
    
    function [COLOR="red"][B]nexttab[/B][/COLOR](el) {
    	var outerdiv = $(el).getParent();
    	var liste = $(outerdiv).getElement('ul.tabs');
    	var getid = el.split('_');
    	var activelink = 'link_' + getid[1];
    	var aktiverlink = $(activelink).getProperty('aria-selected');
    	var tablinks = $(liste).getElements('a').getProperty('id');
    
    	for ( var i = 0; i < tablinks.length; i++) {
    
    		if (tablinks[i] == activelink) {
    
    			if ($(tablinks[i + 1]) != null) {
    				$(tablinks[i + 1]).onmouseover();
    				break;
    			}
    		}
    	}
    }

    Commentaire

    Annonce

    Réduire
    Aucune annonce pour le moment.

    Partenaire de l'association

    Réduire

    Hébergeur Web PlanetHoster
    Travaille ...
    X