Clean URL Query

Trim tracking query params from URL

Fra 10.10.2018. Se den seneste versjonen.

  1. // ==UserScript==
  2. // @name Clean URL Query
  3. // @namespace http://leesei.github.io
  4. // @version 1.0
  5. // @description Trim tracking query params from URL
  6. // @author leesei@gmail.com
  7. // @supportURL https://github.com/leesei/userscripts
  8. // @match http*://detail.tmall.com/item.htm*
  9. // @match http*://item.taobao.com/item.htm*
  10. // @run-at document-start
  11. // @grant GM_log
  12. // @grant GM_info
  13. // @noframes
  14. // ==/UserScript==
  15.  
  16. function log(level, text) {
  17. GM_log(level + ": " + text);
  18. }
  19.  
  20. function query2json(querystring) {
  21. // remove any preceding url and split
  22. var queries = querystring.substring(querystring.indexOf('?')+1).split('&');
  23. var params = {}, pair, d = decodeURIComponent;
  24. // march and parse
  25. for (var i = queries.length - 1; i >= 0; i--) {
  26. pair = queries[i].split('=');
  27. params[d(pair[0])] = d(pair[1]);
  28. }
  29.  
  30. return params;
  31. }
  32.  
  33. (function() {
  34. 'use strict';
  35.  
  36. log('info', '>>> [' + GM_info.script.namespace + '] Trim URL Query <<<')
  37.  
  38. var queries = query2json(location.search)
  39. // log('info', JSON.stringify(queries))
  40. log('info', Object.keys(queries))
  41. if (Object.keys(queries).length > 1) {
  42. location.replace(location.pathname + '?id=' + queries.id)
  43. }
  44. })();