Advertisement
Guest User

Untitled

a guest
Jun 13th, 2017
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.     window.addEventListener('test-getvalue', function (ev) {
  2.         if (ev.detail.deferred && ev.detail.key)
  3.             ev.detail.deferred.resolve(GM_getValue(ev.detail.key, ev.detail.defalt));
  4.     });
  5.  
  6.     window.addEventListener('test-setvalue', function (ev) {
  7.         if (ev.detail.key)
  8.             GM_setValue(ev.detail.key, ev.detail.value);
  9.     });
  10.  
  11.     let script = document.createElement('script');
  12.     script.type = 'text/javascript';
  13.     script.textContent = `(${MakeTest.toString()})()`;
  14.     document.body.appendChild(script);
  15.  
  16.     function MakeTest () {
  17.  
  18.         window.Test = {
  19.             store: store,
  20.             load: load
  21.         };
  22.  
  23.         function store (key, value) {
  24.             window.dispatchEvent(new CustomEvent('test-setvalue', { detail: {
  25.                 key: key,
  26.                 value: value
  27.             }}));
  28.         }
  29.  
  30.         function load (key, defalt) {
  31.             return $.Deferred(function (deferred) {
  32.                 window.dispatchEvent(new CustomEvent('test-getvalue', { detail: {
  33.                     deferred: deferred,
  34.                     key: key,
  35.                     defalt: defalt
  36.                 }}));
  37.             });
  38.         }
  39.  
  40.     }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement