Javascript 每30秒执行一次函数jquery mobile?
我有一个jquery mobile phonegap应用程序。我希望在用户停留在特定页面上时每30秒执行一次函数 如果用户停留在一个特定页面上,比如page1,我希望每30秒执行一个函数 简而言之 如果活动页面为第1页 每30秒触发一次getmessages() 如何实现这一点使用settimeinterval 检查这个Javascript 每30秒执行一次函数jquery mobile?,javascript,jquery,jquery-mobile,cordova,Javascript,Jquery,Jquery Mobile,Cordova,我有一个jquery mobile phonegap应用程序。我希望在用户停留在特定页面上时每30秒执行一次函数 如果用户停留在一个特定页面上,比如page1,我希望每30秒执行一个函数 简而言之 如果活动页面为第1页 每30秒触发一次getmessages() 如何实现这一点使用settimeinterval 检查这个 您可以setInterval 代码: HTML: 单击按钮等待3秒钟,然后提醒“你好” 单击关闭警报框后,3秒钟后将出现一个新的警报框。这将永远持续下去 试试看 根据您的要求
您可以setInterval
代码:
HTML:
单击按钮等待3秒钟,然后提醒“你好”
单击关闭警报框后,3秒钟后将出现一个新的警报框。这将永远持续下去
试试看
根据您的要求更换3000(3秒)->30000(30秒)
演示链接
如果您使用的是jQuery Mobile 1.4,则需要收听pagecontainershow
和pagecontainerhide
事件,以便根据页面id
以间隔执行函数
在这些事件上检索页面的id
,然后在页面隐藏时使用开关/case执行函数以及clearInterval
/* setInterval function's name */
var interval;
/* 1) On page show, retrieve page's ID and run checkPage()
2) On page hide, clearInterval() */
$(document).on("pagecontainershow", function () {
var activePage = $.mobile.pageContainer.pagecontainer("getActivePage")[0].id;
checkPage(activePage);
}).on("pagecontainerhide", function () {
clearInterval(interval);
});
/* Run function(s) based on page's ID */
function checkPage(page) {
switch (page) {
case "p1":
interval = setInterval(function () {
/* function(s) */
}, 30000);
break;
case "p2":
interval = setInterval(function () {
/* function(s) */
}, 30000);
break;
}
}
$(document).ready(function(){
function myFunction()
{
setInterval(function(){alert("Hello")},3000);
}
$('#click').click(function(){
myFunction()
})
})
<p>Click the button to wait 3 seconds, then alert "Hello".</p>
<p>After clicking away the alert box, an new alert box will appear in 3 seconds. This goes on forever...</p>
<button id="click">Try it</button>
setInterval(function() {
// Do something every 30 seconds
}, 30000);
/* setInterval function's name */
var interval;
/* 1) On page show, retrieve page's ID and run checkPage()
2) On page hide, clearInterval() */
$(document).on("pagecontainershow", function () {
var activePage = $.mobile.pageContainer.pagecontainer("getActivePage")[0].id;
checkPage(activePage);
}).on("pagecontainerhide", function () {
clearInterval(interval);
});
/* Run function(s) based on page's ID */
function checkPage(page) {
switch (page) {
case "p1":
interval = setInterval(function () {
/* function(s) */
}, 30000);
break;
case "p2":
interval = setInterval(function () {
/* function(s) */
}, 30000);
break;
}
}