From 33b0332ceefc5deb239fa53a0b2db1edbfa3560c Mon Sep 17 00:00:00 2001 From: Ailin Nemui Date: Mon, 18 Apr 2016 14:21:46 +0200 Subject: support filling the javascript filter from url hash [skip ci] --- assets/js/hashfill.js | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 assets/js/hashfill.js (limited to 'assets/js') diff --git a/assets/js/hashfill.js b/assets/js/hashfill.js new file mode 100644 index 0000000..a831703 --- /dev/null +++ b/assets/js/hashfill.js @@ -0,0 +1,32 @@ +(function(document, $) { + 'use strict'; + + function readhash() { + var kv = window.location.hash.substr(1).split('&'); + for(var i = 0; i < kv.length; i++) { + var p = kv[i].split('='); + var e = $(':input').filter(function(i, e) { + return (e.dataset||{}).name === p[0]; + }); + if (e && e[0]) { + e[0].value = decodeURIComponent(p[1].replace(/[+]/g, '%20')); + if ('createEvent' in document) { + var ev = document.createEvent('HTMLEvents'); + ev.initEvent('input', true, false); + e[0].dispatchEvent(ev); + } + } + } + } + + if ('onhashchange' in window) { + $(window).bind('hashchange', readhash); + } + + document.addEventListener('readystatechange', function() { + if (document.readyState === 'complete') { + readhash(); + } + }); + +})(document, $); -- cgit v1.2.3