forked from puddingspudding/persistent-video-volume
-
Notifications
You must be signed in to change notification settings - Fork 0
/
contentscript.js
43 lines (37 loc) · 1.34 KB
/
contentscript.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
(function() {
const STORAGE_KEY = "video-volume";
const STATUS_KEY = "video-volume-status-per-website";
let store = chrome.storage || window.storage;
function setVolume() {
let host = window.location.host;
let key = STATUS_KEY + '_' + host;
store.local.get(key, function(data) {
if (key in data && !data[key]) {
return;
}
var videoTags = document.getElementsByTagName("video");
var audioTags = document.getElementsByTagName("audio");
if (videoTags.length == 0 && audioTags.length == 0) {
return;
}
store.local.get(STORAGE_KEY, function(data) {
if (!data || !(STORAGE_KEY in data)) {
return;
}
for (var x = 0; x < videoTags.length; x++) {
videoTags[x].volume = data[STORAGE_KEY] / 100;
}
for (var x = 0; x < audioTags.length; x++) {
audioTags[x].volume = data[STORAGE_KEY] / 100;
}
});
});
}
function parseHostFromURL(url) {
var parser = document.createElement('a');
parser.href = url;
return parser.host;
}
setVolume();
window.setInterval(setVolume, 1000);
})();