Pergunta

Eu tenho um site com cinco abas usando jQuery-ui. Cada cargas script do jQuery indivíduo. Agora, quando eu ter carregado a segunda aba e ir para a terceira guia os js fora da segunda guia ainda permanece ativa e perturba minhas ações no terceiro espaço guia.

Alguém pode me explicar por que os js fora da segunda guia ainda permanece ativo ao mudar para a terceira guia e como posso evitar esse tipo de comportamento?

Foi útil?

Solução

Depois de ter carregado um script para a página, ela permanece ativa até a página é atualizada. Eu não sei sobre o descarregamento, mas certamente você pode desativar as ações de um determinado roteiro, dependendo do que é. Você poderia postar um exemplo do script causando os problemas?

EDIT: Por exemplo, se você tem um script que é dependente do guia que você está, você pode condicionar as ações no script com as guias de ser em um determinado índice. A sintaxe de demonstração:

// só irá executar a ação se você está na guia atual

if(tabs_ui_index == 0){
  //do something
}

para obter essa variável (tabs_ui_index) você pode fazer algo como isto:

 $('#mytabs').bind('tabsselect', function(event, ui) {
     tabs_ui_index = ui.index;
 });

Este código liga um "tabsselect" evento para o elemento que é tabulado e define a variável para a guia atualmente indexada cada vez que um usuário muda uma guia.

Além disso, você pode eventos Desarquivar, se você carregou um script que definir um evento de clique de um botão que já não existe, ou que você está usando para um propósito diferente agora:

$("#mybutton").unbind("click");

Espero que isso ajude. Deixe-me saber se você tiver quaisquer outras perguntas.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top