[英]Execute a function every 30 seconds jquery mobile?
我有一個jquery手機差距應用程序。 我想每30秒執行一次用戶停留在特定頁面上的功能。
如果用戶停留在特定頁面上說第1頁,我想每隔30秒執行一次功能,
用簡單的話說
如果活動頁面是page1 fire getmessages(),每30秒。
我如何實現這一目標
使用settimeinterval
檢查這個演示
<div id="div2>
<input type="text" name="divText" value="q3"/>
</div>
setInterval(function() {
alert('HI')
}, 30000);
時間以毫秒為單位(1000 = 1秒)
你可以setInterval
。
碼:
$(document).ready(function(){
function myFunction()
{
setInterval(function(){alert("Hello")},3000);
}
$('#click').click(function(){
myFunction()
})
})
HTML:
<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>
根據您的要求更換3000(3 sec) --> 30000 (30 sec)
。
如果您正在使用jQuery Mobile 1.4,則需要監聽pagecontainershow
和pagecontainerhide
事件,以便根據頁面id
執行間隔 。
檢索這些事件上的頁面id
,然后使用switch / 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;
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.