-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathproxy.js
More file actions
34 lines (30 loc) · 687 Bytes
/
Copy pathproxy.js
File metadata and controls
34 lines (30 loc) · 687 Bytes
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
var scope = {};
function RGProxy(object,handler){
var elements = document.querySelectorAll('[rg-bind]');
for(element of elements){
var key = element.getAttribute("rg-bind");
if(!object.elements){
object.elements = [element];
}
else{
object.elements.push(element);
}
}
return new Proxy(object,handler);
}
var handler = {
get: function (target, name) {
return name in target ? target[name] : "";
},
set: function (target,name,value) {
target[name] = value;
for(var element of target.elements){
element.innerHTML = value;
}
},
};
scope.p = new RGProxy({}, handler);
var value = 0;
setInterval(function () {
scope.p.value = value++;
},3000);