Những bookmarklets hữu ích nào bạn sử dụng? [đóng cửa]


32

Tôi sử dụng:

Bạn?


2
Đã thêm đề xuất của tôi dưới dạng câu trả lời riêng biệt để mọi người có thể bỏ phiếu trên từng bookmarklets.
Tom Savage

7
Bạn nên thực sự liên kết mỗi người trong số họ đến một nơi cung cấp cho họ.
Adam T Ink

Tôi <3 Bookmarklets! Chúng là một số ứng dụng web tốt nhất!
Greg Bray

1
người ta cũng có thể lập luận rằng bookmarklets dành cho trình duyệt và do đó câu hỏi này thuộc về siêu người dùng :)
akira

Ngon sẽ sớm biến mất. Thông tin rò rỉ từ một cuộc họp nội bộ của Yahoo đã xác nhận điều này. Hãy chuẩn bị để sớm nghe về sự sụp đổ của nó. Bắt đầu sao lưu dấu trang của bạn. Trong khi đó, việc tìm kiếm là một cái gì đó tốt như hoặc tốt hơn là ngon. Biết bất kỳ?
Mamta D

Câu trả lời:


25

Thứ tôi có thể sử dụng nhiều nhất là Show Neo , do tôi tạo ra. Nó hiển thị biểu tượng neo bên cạnh mọi thành phần trên trang có thể được liên kết trực tiếp.

Nghe có vẻ ngu ngốc, nhưng nó rất hữu ích khi bạn muốn giới thiệu ai đó đến một phần cụ thể của trang web. Và nó dễ dàng hơn nhiều so với việc cố gắng tìm ra nơi chủ sở hữu trang web đặt liên kết neo của họ (nếu họ thậm chí đã làm ở nơi đầu tiên).


Tôi đã viết một bookmarklet để giải quyết vấn đề tương tự bằng cách thay đổi URL thành neo hoặc ID gần nhất với văn bản đã chọn. Điều này là gọn gàng mặc dù .. nó cũng hiển thị ID?
trực giác

@intuited: yeah, nó cho phép bạn liên kết với ID ... đó là một trong những lý do tôi tự tạo.
Ý thức

bạn có thể vui lòng chỉ cho tôi cách "cài đặt" nó không?
phunehehe

+1 Nó rất đẹp và sẽ rất tuyệt nếu nó thậm chí có thể bật và tắt.
IsmailS

@phunehehe: Tôi đã cập nhật bài viết để bao gồm hướng dẫn. Nếu bạn có thêm câu hỏi, xin vui lòng cho tôi biết.
Ý thức


15

Đá vào mông

http://erkie.github.com

Tôi tìm thấy điều này trên GitHub . Đó là niềm vui và thích làm tôi quên đi mọi thứ và cũng thoát khỏi chúng!


2
Đây phải là bookmarklet tốt nhất mọi thời đại !!!
Sean Patrick Floyd

2
đó là một câu hỏi hay ... mặc dù câu hỏi đã nói "Hữu ích" :)
Ben


7

Tôi sử dụng SuperGenPass để băm mật khẩu chính của mình thành mật khẩu duy nhất cho các trang web tôi truy cập (hàm băm dựa trên tên miền). Rât thuận tiện.


+1 - Tôi đã sử dụng bookmarklet này quá lâu. Thật tuyệt vời vì bạn có thể sử dụng nó trên máy tính của bạn bè / người thân để tạo mật khẩu hoặc cũng có phiên bản di động cho điện thoại của bạn.
BrianH


6

BugMeNot để nhanh chóng bỏ qua việc đăng nhập của các trang web yêu cầu đăng ký bắt buộc và / hoặc thu thập thông tin cá nhân / nhân khẩu học (như Thời báo New York).



4

Tôi sử dụng bookmarklet StackPrinter ; nó cho phép in các câu hỏi Stack Exchange (như câu hỏi này) theo cách thân thiện với máy in.

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. Đọc sau (gửi trang đến InstaPaper )
  2. Clip to Evernote (lưu trang dưới dạng ghi chú Evernote)
  3. Dễ đọc

Tôi đã đi làm cho một nhận xét snarky về bao gồm nhiều kiến nghị, nhưng tôi có cả ba trong số này trên quầy bar và khuyên họ tất cả, vì vậy ... Answer bookmark của tôi!
Doug Harris

Tôi nghe bạn. Tôi đã thử thêm chúng dưới dạng các đề xuất riêng biệt, nhưng hệ thống sẽ chỉ cho phép tôi đưa ra một câu trả lời cho câu hỏi này (cho đến khi thời gian trì hoãn tùy ý trôi qua), và đề nghị kết hợp tất cả chúng lại với nhau.
Mike Richardson

Tôi đã thêm Instapaper làm một lớp lót - vì tôi không sử dụng hai lớp kia. Mặc dù không có tiếng sủa, trừ khi có một nụ cười;)
Jon Hadley

Clip để Evernote là tuyệt vời. :)
JFW


3

jQuerify là bookmarklet tôi không thể sống thiếu. Thêm (nếu cần) jQuery vào danh sách các tập lệnh trên trang. Làm cho việc viết bookmarklets nhỏ khác ít đau đớn hơn!


2

Tôi sử dụng một vài bookmarklets (có tên + và -) để nhanh chóng tăng hoặc giảm trang của bài viết tôi đang đọc.

Giảm:

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)();

Tăng:

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 - Tương tự như các bookmarklet in khác, nhưng cho phép bạn chọn các yếu tố để xóa khỏi trang.


Tôi biết PrintWhatYouLike.com, nhưng cách này đơn giản hơn nhiều
CharlesB

2

Đây là bookmarklet của riêng tôi cho tất cả các trang web Stack Exchange:

Mã này sẽ hiển thị số lượng upvote của bạn cho tất cả các thẻ xuất hiện trong phần thẻ hàng đầu của trang người dùng của bạn. Nó nên hoạt động trên bất kỳ trang web Stack Exchange nào mà bạn đã đăng nhập (nhưng tôi chỉ thử nghiệm nó trên Stack Overflow và Meta Stack Overflow). Thật không may, có một lỗi trong logic chuyển hướng từ đồng nghĩa thẻ sẽ giữ cho tập lệnh này không hoạt động với các từ đồng nghĩa thẻ.

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)

Và đây là phiên bản không đánh dấu của tập lệnh:

// 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 rất đẹp và hữu ích. Cần một nút "Đóng Sidebar".
chanchal1987



1

Tôi có một màn hình lớn. Một số trang web không giới hạn độ rộng tối đa của nội dung. Điều đó thường làm cho văn bản dài không thể đọc được. Vì vậy, bookmarklet yêu thích của tôi là cái này. Nó giới hạn chiều rộng tối đa của trang.

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
Tại sao bạn không sử dụng document.getElementsByTagName( 'body' )[0].style.maxWidth = '800px';? Dường như với tôi dễ dàng hơn nhiều so với việc thêm một biểu định kiểu mới ..
chọc

1

XRAY
Tôi sử dụng nó để xem mô hình hộp cho bất kỳ yếu tố nào trên bất kỳ trang web nào.


1

Cuối cùng, Zap Colors được cài đặt trên bất kỳ trình duyệt nào tôi sử dụng. Văn bản màu xám trên nền đen? Zap và nó đột nhiên có thể đọc được.



1

Bất cứ ai thích bookmarklets nên xem qua iMacros Firefox và tiện ích mở rộng chrome. Chúng cho phép bạn tạo "macro" (giống như bookmarklets huuge) để tự động thực hiện tác vụ. Chúng tôi sử dụng chúng cho tất cả các loại "công cụ" trong văn phòng.

Tạo iMacros "Bookmarklets" trong Firefox: Tạo iMacros "Bookmarklets"


1

Aardvark, cả phần mở rộng của Firefox và bookmarklet (dành cho Chrome, Safari và Internet Explorer). Nó rất hữu ích cho các nhà phát triển web cũng như những người chỉ muốn dọn dẹp một trang trước khi in. http://karmatics.com/aardvark/



1

Tôi sử dụng Diigo và diigolet trên safari, mặc dù họ có một thanh công cụ cho một số trình duyệt.

Hãy tin tôi, hãy thử xem.


Tôi cũng thích nó rất nhiều ...
pgras





0

Nếu bạn là một nhà thiết kế web hoặc một người yêu thích kiểu chữ, bạn sẽ thích bookmarklet Font Friend .

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.