Boa tarde a todos, Se me podessem ajudar neste tópico seria uma grande ajuda, visto que as minhas noções de javascript não me permitiram descobrir o pretendido. Eu tenho um filme flash que eu gostaria de interagir com um modulo de joomla. Esse módulo tem dois botões dos quais eu gostaria que fizessem a mesma acção através dos botões flash. O meu index.php chama um ficheiro externo .js para assumir o modulo através do código <link href="/modules/mod_tabarts/style/style2.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="/modules/mod_tabarts/scripts/mootools.js"></script>
<script type="text/javascript" src="/modules/mod_tabarts/scripts/mod_tabarts.js"></script>
<script type="text/javascript">
try{$Gavick;}catch(e){$Gavick = {};}
</script>
<script type="text/javascript">
$Gavick["gk_tabarts-mod"] = {
"activator" : 0,
"autoAnimation" : 0,
"animationTransition" : 33,
"animationType" : 2,
"animationSpeed" : 1000,
"animationInterval" : 5000,
"styleType": 0 };
</script>
<div class="gk_tabarts clearfix" id="-mod">
<div class="gk_tabarts_wrap clearfix" style="width: 250px;">
<ul class="gk_tabartsmenu_ul">
<li><span>Noticias</span></li>
<li><span>Eventos</span></li>
</ul>
<div class="gk_tabarts_container0 clearfix" style="height: 600px;width: 250px;">
<div class="gk_tabarts_container1 clearfix" style="height: 600px;width: 250px;">
<div class="gk_tabarts_container2 clearfix">
<div class="gk_tabarts_item" style="height: 600px;width: 250px;">
<p>noticias</p></div><div class="gk_tabarts_item" style="height: 600px;width: 250px;">
Eventos</div> </div>
</div>
</div>
</div>
<div class="gk_tabarts_button_next">
</div>
<div class="gk_tabarts_button_prev">
</div>
</div>
O código do ficheiro mod_tabarts.js é o seguinte:
window.addEvent("domready",function(){
$ES(".gk_tabarts").each(function(el,i){
var module_id = el.getProperty("id");
var $G = $Gavick["gk_tabarts"+module_id];
var modsArray = el.getElementsBySelector('.gk_tabarts_item');
var animation = ($G["autoAnimation"] == 0) ? true : false;
var actual = 0;
var evnt = ($G["activator"] == 0) ? "click" : "mouseenter";
var amount = modsArray.length;
var timer = false;
if($G["styleType"] == 1){
var baseWidth = $E(".gk_tabarts_container2", el).getSize().size.x;
el.setStyle("width",baseWidth+"px");
var listTab = $E('.gk_tabartsmenu_ul',el);
baseWidth -= listTab.getSize().size.x;
baseWidth -= listTab.getStyle("margin-left").toInt();
baseWidth -= listTab.getStyle("margin-right").toInt();
baseWidth -= listTab.getStyle("padding-right").toInt();
baseWidth -= listTab.getStyle("padding-left").toInt();
baseWidth -= $E(".gk_tabarts_container0",el).getStyle("margin-left").toInt();
baseWidth -= $E(".gk_tabarts_container0",el).getStyle("margin-right").toInt();
baseWidth -= $E(".gk_tabarts_container0",el).getStyle("padding-left").toInt();
baseWidth -= $E(".gk_tabarts_container0",el).getStyle("padding-right").toInt();
$E(".gk_tabarts_container1",el).setStyle("width",baseWidth+"px");
$E(".gk_tabarts_container0",el).setStyle("width",baseWidth+"px");
$ES(".gk_tabarts_item", el).setStyle("width",baseWidth+"px");
}
$E('.gk_tabartsmenu_ul li',el).toggleClass("active");
var param = ($G["animationType"] == 1) ? "width": "height";
$E(".gk_tabarts_container2", el).setStyle(param, ((amount+1)*$E(".gk_tabarts_container1", el).getSize().size.x));
$ES(".gk_tabarts_item", el).each(function(e){e.setStyle("width", $E(".gk_tabarts_container1", el).getSize().size.x + "px");});
$ES('.gk_tabartsmenu_ul li', el).each(function(elm,j){
elm.addEvent(evnt,function(){
actual = gk_tabarts_anim(j, actual, amount, modsArray, el, $G["animationTransition"], $G["animationSpeed"]);
$ES('.gk_tabartsmenu_ul li', el).each(function(elmt){elmt.setProperty("class","");});
$ES('.gk_tabartsmenu_ul li', el)[actual].toggleClass("active");
if(timer){
$clear(timer);
timer = (function(){
actual = gk_tabarts_anim("right" , actual, amount, modsArray, el, $G["animationTransition"], $G["animationSpeed"]);
$ES('.gk_tabartsmenu_ul li', el).each(function(elmt, i){elmt.setProperty("class","");});
$ES('.gk_tabartsmenu_ul li', el)[actual].toggleClass("active");
}).periodical($G["animationInterval"]);
}
});
});
if($E(".gk_tabarts_button_next", el)){
$E(".gk_tabarts_button_next", el).addEvent("click",function(){
actual = gk_tabarts_anim('right', actual, amount, modsArray, el, $G["animationTransition"], $G["animationSpeed"]);
$ES('.gk_tabartsmenu_ul li', el).each(function(elmt){elmt.setProperty("class","");});
$ES('.gk_tabartsmenu_ul li', el)[actual].toggleClass("active");
if(timer){
$clear(timer);
timer = (function(){
actual = gk_tabarts_anim("right" , actual, amount, modsArray, el, $G["animationTransition"], $G["animationSpeed"]);
$ES('.gk_tabartsmenu_ul li', el).each(function(elmt, i){elmt.setProperty("class","");});
$ES('.gk_tabartsmenu_ul li', el)[actual].toggleClass("active");
}).periodical($G["animationInterval"]);
}
});
}
if($E(".gk_tabarts_button_prev", el)){
$E(".gk_tabarts_button_prev", el).addEvent("click",function(){
actual = gk_tabarts_anim('left', actual, amount, modsArray, el, $G["animationTransition"], $G["animationSpeed"]);
$ES('.gk_tabartsmenu_ul li', el).each(function(elmt){elmt.setProperty("class","");});
$ES('.gk_tabartsmenu_ul li', el)[actual].toggleClass("active");
if(timer){
$clear(timer);
timer = (function(){
actual = gk_tabarts_anim("right" , actual, amount, modsArray, el, $G["animationTransition"], $G["animationSpeed"]);
$ES('.gk_tabartsmenu_ul li', el).each(function(elmt, i){elmt.setProperty("class","");});
$ES('.gk_tabartsmenu_ul li', el)[actual].toggleClass("active");
}).periodical($G["animationInterval"]);
}
});
}
if($G["autoAnimation"] == 1){
timer = (function(){
actual = gk_tabarts_anim("right" , actual, amount, modsArray, el, $G["animationTransition"], $G["animationSpeed"]);
$ES('.gk_tabartsmenu_ul li', el).each(function(elmt, i){elmt.setProperty("class","");});
$ES('.gk_tabartsmenu_ul li', el)[actual].toggleClass("active");
}).periodical($G["animationInterval"]);
}
});
});
function gk_tabarts_anim(direct, actual, amount, modsArray, el, t, s){
var transitions_tab = [
0,0,0,0,0,0,0,0,0,0,0,
Fx.Transitions.linear,
Fx.Transitions.Quad.easeIn,
Fx.Transitions.Quad.easeOut,
Fx.Transitions.Quad.easeInOut,
Fx.Transitions.Cubic.easeIn,
Fx.Transitions.Cubic.easeOut,
Fx.Transitions.Cubic.easeInOut,
Fx.Transitions.Quart.easeIn,
Fx.Transitions.Quart.easeOut,
Fx.Transitions.Quart.easeInOut,
Fx.Transitions.Quint.easeIn,
Fx.Transitions.Quint.easeOut,
Fx.Transitions.Quint.easeInOut,
Fx.Transitions.Pow.easeIn,
Fx.Transitions.Pow.easeOut,
Fx.Transitions.Pow.easeInOut,
Fx.Transitions.Expo.easeIn,
Fx.Transitions.Expo.easeOut,
Fx.Transitions.Expo.easeInOut,
Fx.Transitions.Circ.easeIn,
Fx.Transitions.Circ.easeOut,
Fx.Transitions.Circ.easeInOut,
Fx.Transitions.Sine.easeIn,
Fx.Transitions.Sine.easeOut,
Fx.Transitions.Sine.easeInOut,
Fx.Transitions.Back.easeIn,
Fx.Transitions.Back.easeOut,
Fx.Transitions.Back.easeInOut,
Fx.Transitions.Bounce.easeIn,
Fx.Transitions.Bounce.easeOut,
Fx.Transitions.Bounce.easeInOut,
Fx.Transitions.Elastic.easeIn,
Fx.Transitions.Elastic.easeOut,
Fx.Transitions.Elastic.easeInOut
];
var scr = new Fx.Scroll($E(".gk_tabarts_container1",el), {duration: s, wait: true, transition: transitions_tab[t]});
if(direct == 'left'){
(actual > 0) ? actual-- : actual = amount - 1;
scr.toElement(modsArray[actual]);
}else if(direct == 'right'){
(actual < (amount-1)) ? actual += 1 : actual = 0;
scr.toElement(modsArray[actual]);
}else{
actual = direct;
scr.toElement(modsArray[actual]);
}
return actual;
} A instancia dos botoes flash foram atribuidas como noticias_mc e eventos_mc. Caso me possam ajudar agradecia imenso. Alguém tem sugestões? Agradecia uma ajudazinha. Não preciso da resposta chapada mas pelo menos algumas sugestões para conseguir o que pretendo. Se alguém tiver alguma ideia de como poderei fazer a ligação entre o flash e o módulo agradeço. Thnx