El caso es que el contenido de esas tabs se cargan via load() desde archivos html y una de esas páginas contiene un script para jquery que se carga y funciona correctamente, pero si me muevo entre tabs el script sigue ejecutandose y si vuelvo a esa tab en cuestión se vuelve a cargar otra vez y así indefinidamente.
Mi idea es hacer que ese script solo sea valido en esa tab y que al salir de esa tab no se ejecute.
El script en cuestión que me da estos problemas es el jQuery Spy, un scroller de noticias que se ejecuta cada x segundos para cargar nuevas noticias desde un fichero externo. (http://leftlogic.com/lounge/articles/jquery_spy2/
Aun así y de cara a otros scripts, dejo claro que lo quiero hacer es detener todas aquellas funciones jquery que se estén ejecutando, al cambiar de tab, o alguna forma de eliminar el "caché" que el navegador almacena con cada llamada ajax.
Me habré explicado fatal
He revisado la documentacion de Jquery (http://docs.jquery.com) y he visto que igual hay dos funciones que podrian ayudarme pero no he conseguido aplicarlas. Estas son one() y jQuery.removeData.
Os dejo el codigo que carga el script en el html de una de las tabs:
Código HTML:
<script type="text/javascript" src="spy.js"></script> <script type="text/javascript"> $(function() { $('#spyContainer').spy({ 'ajax': 'news.php', 'limit': '5', 'fadeLast': '2', 'timeout' : '5000' }); }); </script> <div id="spyContainer"></div>
Código HTML:
<script type="text/javascript"> $(document).ready(function(){ $(".menutabs a").each(function(){ var href = $(this).attr("href"); $(this).attr({ href: "#"}); $(this).click(function(){ $("#dondesecarga").load(href); }); }); }); </script> <div id="dondesecarga"></div>