Bài đăng đầu tiên của tôi tại đây =].Cài đặt tiện ích mở rộng của ChromeThời gian không hoạt động đúng
Tôi đang tạo tiện ích mở rộng chrome và tôi đang sử dụng một setTimeout đệ quy. Tôi nhận thấy rằng nếu tôi đặt nó lên đến 13 giây, nó hoạt động, nhưng nếu tôi đặt nó đến 14 giây + nó sẽ không hoạt động.
Đây là một ví dụ mà là trên background.js tôi
function start() {
var timeout = setTimeout(function() { start(); }, 1000*15);
alert('test');
}
chrome.webNavigation.onCompleted.addListener(function(o) {
start();
}, {
url: [
{urlContains: 'http://www.example.com/in.php'},
{urlContains: 'http://www.example.com/out.php'}
]
}
);
Nếu bạn giảm thời gian chờ mà đến 1000 * 13, nó hoạt động.
Đây là manifest.json tôi
{
"name": "Extension",
"version": "0.0.7",
"manifest_version": 2,
"description": "Keeps proxy session alive",
"homepage_url": "http://www.example.com",
"icons": {
"16": "icons/icon16-on.png",
"48": "icons/icon48-on.png",
"128": "icons/icon128-on.png"
},
"default_locale": "en",
"background": {
"scripts": [
"src/bg/background.js"
],
"persistent": false
},
"browser_action": {
"default_icon": "icons/icon19.png",
"default_title": "Example - Off",
"default_popup": ""
},
"permissions": [
"webNavigation",
"*://*/*",
"https://*/*"
]
}
Bất kỳ ý tưởng về những gì có thể gây oddness này? Tôi đang thử nghiệm điều này trên chế độ nhà phát triển, BTW.
Cảm ơn trước!
EDIT
Mã cố định:
manifest.json
tôi thêm "báo động" cho phép
background.js
Added thi sự kiện để lắng nghe những alarms.create:
chrome.alarms.onAlarm.addListener(function(alarm){
start();
});
thay thế chức năng setTimeout với dòng dưới đây
chrome.alarms.create("Start", {periodInMinutes:1});
Hope this helps!
Vâng !! Tại chỗ trên!! Làm tốt! Tôi sẽ bỏ phiếu cho điều này một khi tôi có đủ danh tiếng. Cám ơn nhiều, ông bạn. – badcom