zoukankan      html  css  js  c++  java
  • 批量删除亚马逊kindle云端文档

    首先鄙视亚马逊的不负责任,kindle的云端管理系统犹如一坨狗屎,根本没有考虑的任何用户体验,只能一个一个删除不说,删除后又回到第一页。。。翻页也没有输入页码的地方,如果在第100页删除文档后,又回到第一页……

    一下是老外写的js代码,放到chrome就能用:)

    (window.deKi && deKi()) || (function() {
    if( window.location.href.indexOf('https://www.amazon.com/gp/digital/fiona/manage') !== 0 && window.location.href.indexOf('https://www.amazon.co.jp/gp/digital/fiona/manage') !== 0 && window.location.href.indexOf('https://www.amazon.cn/gp/digital/fiona/manage') !== 0 ) {
      alert( 'Only works in https://www.amazon.com/gp/digital/fiona/manage' );
      return window.open("https://www.amazon.com/gp/digital/fiona/manage");
    }
    
    function _dkiOb(id){return document.getElementById(id)}
    
    var prefix = '_dki_', css = ' style="cursor:pointer;padding:0 6px; display:inline-block;margin-left:6px;background:<bgc>;"';
    
    window.deKi = function(flag) {
      var t = _dkiOb(prefix +'dekiArea')
        , hidden = t.style.display == 'none' || flag === true;
      t.style.display = hidden ? 'block' : 'none';
    
      if( hidden ) {
        _dkiOb(prefix+'confirm').style.display = 'none';
        _dkiOb(prefix+'del').style.display = 'block';
        _dkiOb(prefix +'word').focus();
      }
      t = null;
      return true; //!
    }
    
    var delKeys = [];
    
    function del(n){
      delKeys = [];
      if( n )
        n = n.toLowerCase();
    
      var a=document.getElementsByClassName('rowHeaderCollapsed');
      for(var i = 0; i<a.length; i++){
       if (!n || a[i].getElementsByClassName('headerTitle')[0].textContent.toLowerCase().indexOf(n) > -1) {
          var id = a[i].getElementsByTagName('input')[1].value;
          delKeys.push(id);
        }
      }
    };
    
    var d = document.createElement('div');
    d.id = prefix+'dekiArea';
    d.style.cssText = 'display:none;border:8px solid #66A0D6;background:#fff;360px;position:fixed;right:16px;top:16px;border-radius:8px;z-index:999999;-webkit-box-shadow:0 7px 8px rgba(128,128,128,0.9);';
    d.innerHTML = '<div style="margin:16px"><a id="'+prefix+'close"'+css.replace(/<bgc>/,'#c30;color:#fff;border-radius:3px;')+'>×</a> Filter: <input id="'+prefix+'word" placeholder="Search your library" style="230px"/></div><div style="display:block;line-height:3em;background: #66A0D6;color:#fff;text-align:center;" id="'+prefix+'del"><b>DeKi</b>: Delete Kindle Items <a id="'+prefix+'start"'+css.replace(/<bgc>/,'#fe0;color:#66A0D6')+'>Delete</a></div><div style="line-height:3em;display:none;background:#66A0D6;color:#fff;text-align:center;" id="'+prefix+'confirm">Delete <b id="'+prefix+'count"></b> Item(s) Permanently? <a'+css.replace(/<bgc>/,'#ccc;color:#fff')+' id="'+prefix+'no">No</a> <a'+css.replace(/<bgc>/,'#fe0;color:#66A0D6')+' id="'+prefix+'yes">Yes</a></div><p align="center" style="margin:2px 0;opacity:0.2"><b>DeKi</b> by <a href="http://mindon.github.com">http://mindon.github.com</a></p>';
    document.body.appendChild( d );
    _dkiOb(prefix +'close').onclick = function(){
      _dkiOb(prefix +'dekiArea').style.display = 'none';
      _dkiOb(prefix+'confirm').style.display = 'none';
      _dkiOb(prefix+'del').style.display = 'block';
    };
    d = null;
    
    _dkiOb(prefix +'word').oninput = function() {
      _dkiOb('searchTextId').value = this.value;
      _dkiOb('searchTextGoButton').click();
    
      if( _dkiOb(prefix+'confirm').style.display != 'none' ) {
        _dkiOb(prefix+'confirm').style.display = 'none';
        _dkiOb(prefix+'del').style.display = 'block';
      }
    };
    _dkiOb(prefix+'start').onclick = function(){
      del();
    
      _dkiOb(prefix+'count').innerHTML = /^s*$/.test( _dkiOb(prefix+'word').value ) ? 'All('+delKeys.length+')' : delKeys.length;
    
      _dkiOb(prefix+'del').style.display = 'none';
      _dkiOb(prefix+'confirm').style.display = 'block';
    
    };
    
    _dkiOb(prefix+'no').onclick = function(){
      _dkiOb(prefix+'confirm').style.display = 'none';
      _dkiOb(prefix+'del').style.display = 'block';
    };
    
    _dkiOb(prefix+'yes').onclick = function(){
      deKi(true);
      for(var i = 0; i<delKeys.length; i++){Fion.deleteItem('deleteItem_'+delKeys[i]);}  
    };
    
    deKi();
    })();
  • 相关阅读:
    notepad++的使用
    windows下的ubuntu
    VMware Tools安装
    Terminal命令
    Linux文件操作
    vim学习
    Windows桌面美化
    求解移动字符串问题
    求解回文序列问题
    用Git命令把本地项目,提交到远程仓库
  • 原文地址:https://www.cnblogs.com/tintin1926/p/3860551.html
Copyright © 2011-2022 走看看