У меня было несколько вкладок, которые при нажатии использовали jquery для загрузки данных в div.Мне нужны данные для перезагрузки с 5-секундным интервалом, но только информация из конкретной вкладки.Итак, вот что у меня есть ... Я думаю, что мне нужно запустить setInterval при нажатии на вкладку, а затем остановить его при нажатии на другую.Вот мой код для вкладок:
<script type="text/javascript">
$(document).ready(function(){
$("#xicon1").click(function(){
$('a[name^="xicon"]').removeClass();
$(this).addClass("active");
$("#actionlist").load("alcurrent.php");
});
$("#xicon2").click(function(){
$('a[name^="xicon"]').removeClass();
$(this).addClass("active");
$("#actionlist").load("alpending.php");
});
$("#xicon3").click(function(){
$('a[name^="xicon"]').removeClass();
$(this).addClass("active");
$("#actionlist").load("alpast.php");
});
});
</script>
Так, например, когда нажата # xicon1, мне нужно загрузить alcurrent.php в #actionlist (я могу это сделать), но мне нужно перезагрузить егоэто каждые 5 секунд.Затем, когда я нажимаю другую вкладку, мне нужно, чтобы она загружалась каждые 5 секунд.Итак, какая бы вкладка ни была активной, мне нужно, чтобы содержимое загружалось каждые 5 секунд.
Я пробовал setInterval ... но не играли в кости.
Спасибо.
Редактировать:
Вот что я сделал, и я думаю, что это работает ...
<script type="text/javascript">
$(document).ready(function(){
$("#xicon1").click(function(){
$('a[name^="xicon"]').removeClass();
$(this).addClass("active");
function xicon1() {
$("#actionlist").load("alcurrent.php");
}
setInterval(xicon1, 5000);
});
$("#xicon2").click(function(){
$('a[name^="xicon"]').removeClass();
$(this).addClass("active");
function xicon2() {
$("#actionlist").html("<p>2</p>")
}
setInterval(xicon2, 5000);
});
$("#xicon3").click(function(){
$('a[name^="xicon"]').removeClass();
$(this).addClass("active");
function xicon3() {
$("#actionlist").html("<p>3</p>")
}
setInterval(xicon3, 5000);
});
});
</script>
Edit2: это может быть немного красивее:
<script type="text/javascript">
$(document).ready(function(){
$("#xicon1").click(function(){
$('a[name^="xicon"]').removeClass();
$(this).addClass("active");
function xicon1() {
$("#actionlist").load("alcurrent.php");
};
$(function() {
setInterval(xicon1, 5000);
};
});
$("#xicon2").click(function(){
$('a[name^="xicon"]').removeClass();
$(this).addClass("active");
function xicon2() {
$("#actionlist").html("<p>2</p>")
};
setInterval(xicon2, 5000);
});
$("#xicon3").click(function(){
$('a[name^="xicon"]').removeClass();
$(this).addClass("active");
function xicon3() {
$("#actionlist").html("<p>3</p>")
};
setInterval(xicon3, 5000);
});
});
</script>
Хорошо, япросто хочу быть уверен: когда кто-то нажимает на другую вкладку, она останавливает обновление содержимого другой вкладки каждые 5 секунд?