Estou precisando de umas dicas em JavaScript… seguinte:
tenho uma pagina com abas que são trocadas sem precisar recarregar toda a pagina, dada pelo seguinte codigo:
[/b]
function tabview_aux(TabViewId, id)
{
var TabView = document.getElementById(TabViewId);
// ----- Tabs -----
var Tabs = TabView.firstChild;
while (Tabs.className != "Tabs" ) Tabs = Tabs.nextSibling;
var Tab = Tabs.firstChild;
var i = 0;
do
{
if (Tab.tagName == "A")
{
i++;
Tab.href = "javascript:tabview_switch('"+TabViewId+"', "+i+");";
Tab.className = (i == id) ? "Active" : "";
Tab.blur();
}
}
while (Tab = Tab.nextSibling);
// ----- Pages -----
var Pages = TabView.firstChild;
while (Pages.className != 'Pages') Pages = Pages.nextSibling;
var Page = Pages.firstChild;
var i = 0;
do
{
if (Page.className == 'Page')
{
i++;
if (Pages.offsetHeight) Page.style.height = (Pages.offsetHeight-2)+"px";
Page.style.overflow = "auto";
Page.style.display = (i == id) ? 'block' : 'none';
}
}
while (Page = Page.nextSibling);
}
// ----- Functions -------------------------------------------------------------
function tabview_switch(TabViewId, id) { tabview_aux(TabViewId, id); }
function tabview_initialize(TabViewId) { tabview_aux(TabViewId, 1); }
o problema eh que a aba “ativa” nao troca a imagem como fica quando o mouse esta em cima (hover) e, pelo que imaginei, deveria ficar, veja o css:
Não tenho certeza mas deve ser isso… ou então você deve adicionar essa classe na sua tab selecionada, isso eu procurei e não vi você fazendo no javascript…
[quote=dudaskank]Ali no css, mais especificamente aqui…
div.TabView div.Tabs a.active
Não seria na verdade assim?
div.TabView div.Tabs a:active
[/quote]O problema até tá ai sim, mas creio que seja porque lá no javascript vc definiu a classe da aba ativa como sendo ‘Active’ e no css você colocou ‘active’. Como CSS é case sensitive…