Quels bookmarklets utiles utilisez-vous? [fermé]


32

J'utilise:

Toi?


2
Ajout de mes suggestions en tant que réponses distinctes pour que les gens puissent voter sur des bookmarklets individuels.
Tom Savage

7
Vous devriez vraiment relier chacun d’entre eux à l’endroit qui les fournit.
Adam Tuttle

Je <3 Bookmarklets! Ils sont parmi les meilleures applications Web!
Greg Bray

1
on pourrait également dire que les bookmarklets sont destinés aux navigateurs et que cette question appartient donc au super-utilisateur :)
akira

Délicieux sera bientôt parti. Des informations divulguées lors d'une réunion interne à Yahoo l'ont confirmé. Soyez prêt à bientôt entendre parler de sa disparition. Commencez à sauvegarder vos favoris. Pendant ce temps, la recherche de quelque chose d'aussi bon ou meilleur que délicieux est lancée. Connaissez-vous?
Mamta D

Réponses:


25

Celui que j'utilise le plus souvent est Show Anchors , que j'ai fabriqué. Il affiche une icône d'ancrage à côté de chaque élément de la page auquel il est possible de lier directement.

Cela semble stupide, mais c'est très utile lorsque vous souhaitez renvoyer quelqu'un vers une section spécifique d'un site Web. Et c'est beaucoup plus facile que d'essayer de savoir où le propriétaire du site a mis ses liens d'ancrage (s'ils l'avaient même fait en premier lieu).


J'ai écrit un bookmarklet pour résoudre le même problème en modifiant simplement l'URL de l'ancre la plus proche ou l'ID du texte sélectionné. C’est bien mais .. est-ce que cela montre aussi les identifiants?
Intuition

@intuited: oui, cela vous permet de créer des liens vers des identifiants… c'est l'une des raisons pour lesquelles j'ai créé le mien.
Senseful

Pourriez-vous me montrer comment "l'installer"?
Phunehehe

+1 Il est très agréable et ce serait génial s'il pouvait même l'activer ou le désactiver.
IsmailS

@phunehehe: j'ai mis à jour l'article pour y inclure des instructions. Si vous avez plus de questions, s'il vous plaît faites le moi savoir.
Sensé




7

J'utilise SuperGenPass pour hacher mon mot de passe principal en mots de passe uniques pour les sites que je visite (le hachage est basé sur le domaine). Très pratique.


+1 - J'ai utilisé ce bookmarklet pendant si longtemps. C’est formidable, car vous pouvez l’utiliser sur les ordinateurs de vos amis ou de votre famille pour générer votre mot de passe. Il existe également une version mobile pour votre téléphone.
BrianH


6

BugMeNot de ne pas contourner rapidement la connexion des sites Web nécessitant un enregistrement obligatoire et / ou la collecte d'informations personnelles / démographiques (comme le New York Times).



4

J'utilise StackPrinter bookmarklet; cela permet d'imprimer des questions d'échange de pile (comme celle-ci) d'une manière facile à imprimer.

javascript:(function(){var re = new RegExp('^http://(.*?)\.com/questions/([0-9]+)/');var group = re.exec(window.location.href);if (group!=null){var service = group[1];var questionid=group[2];window.open('http://www.stackprinter.com/export?format=HTML&service='+service+'&question='+questionid)}else{alert('Attention: question id not found!')}})()

3
  1. Lire plus tard (envoie la page à InstaPaper )
  2. Clip to Evernote (enregistre la page en tant que note Evernote)
  3. Lisibilité

Je me vais faire une remarque au sujet snarky y compris plusieurs recommandations, mais j'ai tous les trois de ces derniers sur mes signets bar et les recommander tout vote si ... vous!
Doug Harris

Je t'entends. J'ai essayé de les ajouter en tant que suggestions distinctes, mais le système ne me permettait de donner qu'une seule réponse à cette question (jusqu'à ce qu'un délai arbitraire se soit écoulé) et j'ai suggéré de les regrouper.
Mike Richardson

J'ai ajouté Instapaper en tant que doublure - car je n'utilise pas les deux autres. Pas de snark cependant, à moins qu'un smiley compte;)
Jon Hadley

Clip to Evernote est épique. :)
JFW


3

jQuerify est le bookmarklet sans lequel je ne peux pas vivre. Ajoute si nécessaire jQuery à la liste des scripts de la page. Cela rend l’écriture d’autres petits bookmarklets beaucoup moins pénible!


2

J'utilise quelques bookmarklets (nommés + et -) pour incrémenter ou décrémenter rapidement la page d'un article que je lis.

Décrémenter:

javascript:(function()%7B%20var%20e,s;%20IB=-1;%20function%20isDigit(c)%20%7B%20return%20(%220%22%20%3C=%20c%20&&%20c%20%3C=%20%229%22)%20%7D%20L%20=%20location.href;%20LL%20=%20L.length;%20for%20(e=LL-1;%20e%3E=0;%20--e)%20if%20(isDigit(L.charAt(e)))%20%7B%20for(s=e-1;%20s%3E=0;%20--s)%20if%20(!isDigit(L.charAt(s)))%20break;%20break;%20%7D%20++s;%20if%20(e%3C0)%20return;%20oldNum%20=%20L.substring(s,e+1);%20newNum%20=%20%22%22%20+%20(parseInt(oldNum,10)%20+%20IB);%20while%20(newNum.length%20%3C%20oldNum.length)%20newNum%20=%20%220%22%20+%20newNum;%20location.href%20=%20L.substring(0,s)%20+%20newNum%20+%20L.slice(e+1);%20%7D)();

Incrément:

javascript:(function()%7B%20var%20e,s;%20IB=1;%20function%20isDigit(c)%20%7B%20return%20(%220%22%20%3C=%20c%20&&%20c%20%3C=%20%229%22)%20%7D%20L%20=%20location.href;%20LL%20=%20L.length;%20for%20(e=LL-1;%20e%3E=0;%20--e)%20if%20(isDigit(L.charAt(e)))%20%7B%20for(s=e-1;%20s%3E=0;%20--s)%20if%20(!isDigit(L.charAt(s)))%20break;%20break;%20%7D%20++s;%20if%20(e%3C0)%20return;%20oldNum%20=%20L.substring(s,e+1);%20newNum%20=%20%22%22%20+%20(parseInt(oldNum,10)%20+%20IB);%20while%20(newNum.length%20%3C%20oldNum.length)%20newNum%20=%20%220%22%20+%20newNum;%20location.href%20=%20L.substring(0,s)%20+%20newNum%20+%20L.slice(e+1);%20%7D)();

2

PrintLiminator - Semblable à d'autres bookmarklets d'impression, mais vous permet de sélectionner des éléments à supprimer de la page.


Je connaissais PrintWhatYouLike.com, mais celui-ci est bien plus simple.
CharlesB

2

Voici mon propre bookmarklet pour tous les sites Stack Exchange:

Ce code affichera le nombre de votes positifs pour toutes les balises qui apparaissent dans la section des balises supérieures de votre page utilisateur. Cela devrait fonctionner sur n'importe quel site Stack Exchange sur lequel vous êtes connecté (mais je ne l'ai testé que sur Stack Overflow et Meta Stack Overflow). Malheureusement, la logique de redirection des synonymes de balises contient un bogue qui empêche ce script de fonctionner avec les synonymes de balises.

javascript:var uP=$('#hlinks-user a:eq(1)')[0].href;var uN=uP.replace(/.*\//gi,'');var uI=uP.replace(/.*\/([\d]+)\/.*/,'$1');var tsp='/tags/$0/topusers';var tqp='/questions/tagged/$0';var rD='result';var mA=5;var cA=0;var cO=0;var tT;var aT=[];var rT=[];var lI=function(tA,tP,tX,tT,bK){return' <span style="font-size:smaller;">[<a style="color:#777" href="'+tP.replace('$0',tA)+'"'+(bK?' target="_BLANK"':'')+(tT?' title="'+tT+'"':'')+'>'+tX+'</a>]</span>';};var pR=function(){if($('#'+rD).size()==0){$(document.body).append($('<div id="'+rD+'"></div>').css({'position':'fixed','top':'0','bottom':'0','left':'0','width':'40ex','background':'#fff','border-right':'solid #777 5px','overflow':'auto','text-align':'left','padding':'.3em'}));}};var dR=function(){rT.sort(function(a,b){return b[1]-a[1];});$('#'+rD+' h3').html('Your top '+tT+' tag scores:');$.each(rT,function(index,item){var tA=item[0],sC=item[1];var select=$('#tA'+(index+1));select.find('td:eq(1)').html(tA+lI(tA,tqp,'q','questions')+lI(tA,tsp,'s','stats'));select.find('td:eq(2)').html(sC);if(sC>99){select.find('td:eq(2)').css({'background':(sC>999?'gold':sC>399?'silver':'#A67D3D')});} select.find('td:eq(0)').remove();select.find('td').css({'padding':'.3em'});});};var dP=function(){if(aT.length==0&&cA==0){dR();return;}else if(cA<mA&&aT.length>0){rS(aT.pop());} window.setTimeout(dP,200);};var rS=function(tA){cA++;var oS=++cO;var dI='tA'+oS;$('#'+rD+' table').append($('<tr id="'+dI+'"><td>'+oS+' / '+tT+'</td><td>'+tA+'</td><td>...</td></tr>'));jQuery.get(tsp.replace('$0',tA),function(data){var sT=$(data.replace(/<img[^>]*>/gi,'')).find(".fl:eq(1) a[href*='"+uI+"']").parents('tr:eq(0)').find('.top-count:eq(0)').contents().text().trim().replace(/\D+/,'');rT.push([tA,sT?parseInt(sT):0]);$('#'+dI+' td:last').html('Done.');cA--;});};var tU=function(){jQuery.get(uP,function(result){fT($(result.replace(/<img[^>]*>/gi,'')));})};var fT=function(pN){if(!pN)pN=$('html');pN.find('.user-stats-table:eq(3) a.post-tag').each(function(index,item){aT.push(item.innerHTML.replace(/<[^>]*>/gi,''));});tT=aT.length;$('#'+rD).html('<h3>Retrieving tag scores...</h3><table style="width: 100%;"></table>');dP();};pR();if(document.URL==uP) fT(false);else tU();void(0)

Et voici une version lisible du script:

// begin config
var uP = $('#hlinks-user a:eq(1)')[0].href; // user page URL
var uN = uP.replace ( /.*\//gi, '' ); // user name
var uI = uP.replace(/.*\/([\d]+)\/.*/, '$1'); // user id
var tsp = '/tags/$0/topusers'; // template for stats page
var tqp = '/questions/tagged/$0'; // template for questions page
var rD = 'result'; // dom id for generated div
var mA = 5; // max concurrent ajax requests
// end config

var cA = 0;  // current ajax requests
var cO = 0;  // current tag offset
var tT;      // total number of tags
var aT = []; // all remaining tags
var rT = []; // retrieved tags (format: [[tag,score]]
var lI = function(tA,tP,tX,tT,bK){ // build link using a tag, a template and a text
    bK = bK!==false;
    return ' <span style="font-size:smaller;">[<a style="color:#777" href="'
           + tP.replace('$0', tA) + '"'
           + (bK ? ' target="_BLANK"' : '')
           + (tT ? ' title="' + tT + '"' : '')
           + '>' + tX + '</a>]</span>';
};
var pR = function(){ // prepare result div
    if($('#'+rD).size()==0){
        $(document.body).append(
            $('<div id="' + rD + '"></div>')
                .css({
                    'position':'fixed',
                    'top':'0',
                    'bottom':'0',
                    'left':'0',
                    'width':'40ex',
                    'background':'#fff',
                    'border-right':'solid #777 5px',
                    'overflow':'auto',
                    'text-align':'left',
                    'padding':'.3em'
                })
        );
    }
};
var dR = function(){ // display results
    rT.sort(function(a,b){
        return b[1]-a[1];
    });
    $('#'+rD+ ' h3').html('Your top '+tT + ' tag scores:');
    $.each(
            rT,
            function(index, item) {
                var tA = item[0], sC = item[1];
                var select = $('#tA'+(index+1));
                select.find('td:eq(1)').html(tA + lI(tA,tqp,'q','questions') + lI(tA,tsp,'s','stats'));
                select.find('td:eq(2)').html(sC);
                if(sC > 99){
                    select.find('td:eq(2)').css({
                        'background' : (
                            sC > 999 ? 'gold'   :
                               sC > 399 ? 'silver' :
                               '#A67D3D'
                        )
                    });
                }
                select.find('td:eq(0)').remove();
                select.find('td').css({'padding':'.3em'});
            }
        );

};
var dP = function(){ // dispatcher function
    if(aT.length == 0 && cA == 0){
        dR();
        return;
    }else if(cA < mA && aT.length > 0){
        rS(aT.pop());
    }
    window.setTimeout(dP, 200);
};
var rS = function(tA){ // retrieve tag score
    cA++;
    var oS = ++cO; // current offset
    var dI = 'tA' + oS; // corresponding dom ID
    $('#'+rD + ' table').append($(
        '<tr id="' + dI + '"><td>'+oS+' / ' + tT + '</td><td>'
        + tA + '</td><td>...</td></tr>'
    ));
    jQuery.get(tsp.replace('$0', tA),function(data){
        // score as text:
        var sT = $(data.replace( /<img[^>]*>/gi, ''))
        .find(".fl:eq(1) a[href*='" + uI + "']")
        .parents('tr:eq(0)').find('.top-count:eq(0)')
        .contents().text().trim().replace(/\D+/,'');

        rT.push(
            [tA,sT ? parseInt(sT) : 0]
        );
        $('#' + dI + ' td:last').html('Done.');
        cA--;
    });
};
var tU = function(){ // get user page via ajax
    jQuery.get(uP, function(result){
        fT($(result.replace( /<img[^>]*>/gi, '')));
    })
};
var fT = function(pN){ // find tags in page node
    if(!pN)pN = $('html');
    pN.find('.user-stats-table:eq(3) a.post-tag').each(
        function(index,item){
            aT.push(item.innerHTML.replace(/<[^>]*>/gi, ''));
        }
    );
    tT=aT.length;
    $('#'+rD).html('<h3>Retrieving tag scores...</h3>'
        + '<table style="width: 100%;"></table>');
    dP();
};
pR();
if(document.URL==uP)// we're in user page
    fT(false);
else // load user page per AJAX
    tU();

(+1) bookmarklet très agréable et utile. Besoin d'un bouton "Fermer la barre latérale".
chanchal1987



1

J'ai un grand écran. Certains sites Web ne limitent pas la largeur maximale du contenu. Cela rend souvent les longs textes illisibles. Donc, mon bookmarklet préféré est le suivant. Il limite la largeur maximale de la page.

javascript:(function(){var%20newSS,%20styles='body%20{max-width:%20800px;}';%20if(document.createStyleSheet)%20{document.createStyleSheet(%22javascript:'%22+styles+%22'%22);}%20else%20{newSS=document.createElement('link');%20newSS.rel='stylesheet';%20newSS.href='data:text/css,'+escape(styles);%20document.documentElement.childNodes[0].appendChild(newSS);}})();

2
Pourquoi n'utilisez-vous pas document.getElementsByTagName( 'body' )[0].style.maxWidth = '800px';? Il me semble beaucoup plus facile que l' ajout d' une nouvelle feuille de style ..
percez

1

XRAY
Je l'utilise pour voir le modèle de boîte de n'importe quel élément d'une page Web.


1

Finalement, Zap Colors est installé sur tous les navigateurs que j'utilise. Texte gris sur fond noir? Zap et c'est soudain lisible.



1

Tous ceux qui aiment bookmarklets devraient jeter un coup d’œil sur les extensions iMacros Firefox et Chrome. Ils vous permettent de créer des "macros" (un peu comme de très gros bookmarklets) pour une tâche autoamte. Nous les utilisons pour toutes sortes de "choses" au bureau.

Créer des "Bookmarklets" iMacros dans Firefox: Création de "Bookmarklets" iMacros


1

Aardvark, qui est à la fois une extension de Firefox et un bookmarklet (pour Chrome, Safari et Internet Explorer). Il est utile pour les développeurs Web ainsi que pour les personnes qui souhaitent simplement nettoyer une page avant de l’imprimer. http://karmatics.com/aardvark/








0

Si vous êtes un concepteur de sites Web ou que vous aimez la typographie, vous apprécierez le bookmarklet de Font Friend .

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.