Ответы:
Я чаще всего использую Show Anchors , которые я сделал. Он показывает значок привязки рядом с каждым элементом на странице, на который можно напрямую связать.
Звучит глупо, но это очень полезно, когда вы хотите отослать кого-то в определенный раздел веб-сайта. И это гораздо проще, чем пытаться выяснить, где владелец сайта разместил свои якорные ссылки (если они вообще это сделали).
Читать позже (отмечает страницу для чтения позже в InstaPaper )
Я нашел это на GitHub . Это весело и нравится отвлекаться от вещей, а также избавляться от них!
Переписывает большинство сокращенных URL-адресов на странице, чтобы показать, куда они вас приведут.
Я использую SuperGenPass для хеширования своего мастер-пароля в уникальные пароли для сайтов, которые я посещаю (хэш основан на домене). Очень удобно.
Букмарклет TinEye для поиска других источников изображений на веб-странице.
Quix: http://quixapp.com
Это немного похоже на Quicksilver для Интернета. Это очень полезно для веб-разработки. Вы также можете настроить Chrome для использования его в качестве поисковой системы, чтобы превратить адресную строку в командную строку.
Я использую букмарклет StackPrinter ; это позволяет печатать вопросы Stack Exchange (как этот) для печати.
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!')}})()
Я использую:
Я использую несколько букмарклетов (названных + и -), чтобы быстро увеличивать или уменьшать страницу статьи, которую я читаю.
Decrement:
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)();
Increment:
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)();
PrintLiminator - аналогичен другим печатным букмарклетам, но позволяет выбирать элементы для удаления со страницы.
Вот мой собственный букмарклет для всех сайтов Stack Exchange:
Этот код покажет количество ваших голосов для всех тегов, которые появляются в разделе самых популярных тегов на странице пользователя. Он должен работать на любом сайте Stack Exchange, на котором вы вошли (но я проверял его только на переполнении стека и переполнении стека). К сожалению, в логике перенаправления синонимов тегов есть ошибка , которая не позволяет этому сценарию работать с синонимами тегов.
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)
И вот читаемая версия скрипта без букмарклета:
// 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();
Запомните пароль для удаления autocomplete = "off"
KeepVid: http://keepvid.com/
У меня большой экран. Некоторые сайты не ограничивают максимальную ширину контента. Это часто делает длинные тексты нечитаемыми. Так что мой любимый букмарклет это. Это ограничивает максимальную ширину страницы.
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);}})();
document.getElementsByTagName( 'body' )[0].style.maxWidth = '800px';
? Мне кажется, это гораздо проще, чем добавить новую таблицу стилей ..
В конце концов Zap Colours устанавливается на любой браузер, который я использую. Серый текст на черном фоне? Зап и это вдруг читается.
У меня есть своя коллекция таких утилит, которые можно найти здесь ...
Любой, кому нравятся букмарклеты, должен взглянуть на iMacros Firefox и расширения chrome. Они позволяют вам создавать "макросы" (вроде букмеклетов huuge) для автоматической задачи. Мы используем их для всех видов «вещей» в офисе.
Создание iMacros "Bookmarklets" в Firefox:
Aardvark, который является одновременно расширением Firefox и букмарклетом (для Chrome, Safari и Internet Explorer). Это полезно для веб-разработчиков, а также людей, которые просто хотят очистить страницу перед печатью. http://karmatics.com/aardvark/
Coralize для добавления сайта в Coral CDN , прежде чем она получает slashdotted .
По аналогии:
Я использую Diigo и diigolet в сафари, у них есть панель инструментов для некоторых браузеров.
Поверь мне, попробуй.
Wikipedia Поиск для поиска выделенного текста в Википедии
Универсальный список пожеланий Amazon для отслеживания вещей, которые я могу захотеть купить позже (дни рождения, рождественские подарки и т. Д.)
Есть много полезных букмарклетов для сервисов Google :
Я использую следующие букмарклеты:
Если вы веб-дизайнер или любите типографику, вам понравится букмарклет Font Friend .