我想构建一个Google Chrome扩展程序,用于检查鼠标移动。
如果鼠标直到5分钟没有移动(在代码中我设置了0.1和0.2,因为我不想在测试时间内总是等待很多),扩展打开其他站点(代码只显示一个警告框) )。
我的问题是,如果鼠标移动,我无法重新设置警报。一切都正常,只需重新启动或重新设置我创建的警报。
我知道我做错了什么。
这是我第一次尝试制作谷歌浏览器扩展程序,但我在php,vb.net,html,vbscript中编程到现在为止。
但重置警报不希望在Google Chrome Ver下工作。 63.(即使我也尝试使用旧版本而且也使用铬,但它没有用)。
感谢您的支持^^
代码从这里开始:
的manifest.json
{
"name": "Chrome-extension",
"version": "1.0",
"manifest_version": 2,
"permissions": [
"alarms"
],
"background": {
"scripts": ["background.js"]
},
"content_scripts": [
{
"matches": ["http://www.google.hu/*"],
"js": ["jquery1.7.2.js", "detectclicks.js"]
}
],
"description": "Chrome-extension",
"browser_action": {
"default_icon": "icon.png"
"default_popup": "popup.html"
}
}
DETECTCLICKS.JS (当鼠标移动时,会重新设置闹钟。删除并重新创建)
$('html').on('mousemove', '*',function(event) {
chrome.alarms.clearAll();
chrome.alarms.create("myAlarm", {delayInMinutes: 0.1,
periodInMinutes: 0.2});
alert("OK");
});
BACKGROUND.JS (如果闹钟正在启动,请显示短信 - 仅仅是因为支票)
chrome.alarms.onAlarm.addListener(function(alarm) {
alert("Beep");
});
POPUP.JS (打开并关闭扩展程序并启动和停止警报)
var alarmClock = {
onHandler : function(e) {
chrome.alarms.create("myAlarm", {
delayInMinutes: 0.1,
periodInMinutes: 0.2
});
window.close();
},
offHandler : function(e) {
chrome.alarms.clear("myAlarm");
window.close();
},
setup: function() {
var a = document.getElementById('alarmOn');
a.addEventListener('click', alarmClock.onHandler);
var a = document.getElementById('alarmOff');
a.addEventListener('click', alarmClock.offHandler);
}
};
document.addEventListener('DOMContentLoaded', function() {
alarmClock.setup();
});
答案 0 :(得分:0)
在prod中你不能设置闹钟< 1分钟,在新版本的chrome中,您无法在开发人员模式下设置此警报。
为了减轻用户计算机的负担,Chrome会每隔1分钟将警报限制为最多一次,但可能会将警报延迟一次。也就是说,将delayInMinutes或periodInMinutes设置为小于1将不会被接受,并将导致警告。在"现在"之后可以设置为不到1分钟没有警告,但实际上不会导致警报至少1分钟。