Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Bookmarklets | Favelets | Букмарклеты

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22

Открыть новую тему     Написать ответ в эту тему

TheBarmaley



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Bookmarklets / Favelets / Букмарклеты / Закладурки
 
Работают в любом* браузере, поддерживающем JavaScript, и, соответственно, в любой* ОС.
* хотя, конечно, всегда возможны исключения, связанные с "заточенностью" кода под что-то конкретное.. =)

В этой теме предлагается собирать и обсуждать эти маленькие "полезняшки" для браузеров.
Особо приветствуется конструктивная критика предлагаемых закладурок и варианты их доработки.
 
Убедительная просьба: публикуя код закладурки, пожалуйста, указывайте ссылку на источник!  


Микро-FAQ:  
Что это такое и зачем оно надо? + там же ссылки на некоторые ресурсы по теме
Как ставить и как применять закладурки?
 
Документация:
Букмарклеты и правила их написания + читаем/помним про ограничения! (пост)
Структурированная информация по языку JavaScript
MSDN: Справочник по языку JavaScript
JavaScript language advanced Tips & Tricks
JavaScript FAQ + там же есть и про букмарклеты
Вопросы и ответы по букмарклетам на StackOverflow.com (En)
 
Сделай сам:
Bookmarklet Combiner - он-лайн конструктор + публикация ваших "творений"
JavaScript Compressor - он-лайн "упаковщик" для сохранения JS в одну строку + кодировка в Base62 (пост)
Script to bookmarklet converter - ещё один он-лайн "упаковщик", попроще (пост)
HTML Compressor - он-лайн "упаковщик" HTML/CSS/JavaScript/PHP (пост)  
Convert bookmarklet to Chrome extension (пост)
 
Ресурсы по теме:
En: bookmarklets.comsquarefree.comphilburns.comoperawiki.infomarklets.comabout.com
Ru: webmascon.comnitro.rularge.rulexi.ucoz.rumichurin.net03www.subookmarklets01
Ru-Board: здесь и здесь
 

// текущий бэкап шапки..

Всего записей: 17813 | Зарегистр. 07-06-2006 | Отправлено: 12:00 15-02-2014 | Исправлено: Maz, 14:14 02-11-2021
VVL99

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alloledd
Может и так, там какая-то хитрая система.

Всего записей: 4158 | Зарегистр. 03-02-2011 | Отправлено: 03:38 06-07-2020
Death_INN

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
VVL99,
 
javascript: location.href = location.href.replace(/^http/, "https") # твой
javascript: location.href = location.href.replace("http", "https") # мой
 
Я так понимаю, первый вариант предпочтительнее? Если да, то можно прояснить?

Всего записей: 3572 | Зарегистр. 24-10-2002 | Отправлено: 02:48 12-07-2020
VVL99

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Death_INN
В данном случает одно и тоже, а так - https://javascript.ru/string/replace
 
Добавлено:
Мой вариант скорее как напоминалка, что мы хотим поменять именно протокол, символ ^ можно убрать, всёравно поиск однократный без ключа g (/http/g).

Всего записей: 4158 | Зарегистр. 03-02-2011 | Отправлено: 03:02 12-07-2020
TeXpert



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
С помощью уважаемого TheBarmaley некоторое время назад был сооружен UserScript для сохранения текста сообщения в файл. Там есть фрагмент, добавляющий дополнительный пункт меню каждому посту
Код:
for(var i=0,b=document.querySelectorAll(".post");i<b.length;i++){
    b[i].parentNode.firstChild.innerHTML="<a id="+i+" class='tpc' href=javascript: title='TestUserscript\nТекст'>Сохранить текст</a> | "+b[i].parentNode.firstChild.innerHTML;
    document.getElementById(i).onclick=s;
}
Немного не нравится то, что при подведении к новому пункту курсора мыши разделитель становится красным
Цитата:
Сохранить текст | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Можно, конечно, этот разделитель затащить в текст:
Цитата:
b[i].parentNode.firstChild.innerHTML="<a id="+i+" class='tpc' href=javascript: title='TestUserscript\nТекст'>Сохранить текст | </a>"+b[i].parentNode.firstChild.innerHTML;
Но все равно, хочется правильного решения. Буду признателен за советы
 
Заранее благодарен

----------
Майкудук, Пришахтинск не предлагать!:)
А на Пирогова приходит снова весенний гомон...

Всего записей: 3625 | Зарегистр. 08-02-2003 | Отправлено: 22:16 13-07-2020 | Исправлено: TeXpert, 22:17 13-07-2020
TheBarmaley



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
TeXpert
Цитата:
хочется правильного решения
можно "палку" отдельно "покрасить", напр., как-то так:
Код:
<span class='tpc'>|</span>
но правильным будет исправить* "старые грабли" и заменить innerHTML на outerHTML:
Код:
b[i].parentNode.firstChild.outerHTML="<a id="+i+" class='tpc' href=javascript: title='TestUserscript\nТекст'>Сохранить текст</a> | "+b[i].parentNode.firstChild.innerHTML;
* чтоб вложенного тега а не было..)

----------
..the one of.. ··· ..sam-&-pol..

Всего записей: 17813 | Зарегистр. 07-06-2006 | Отправлено: 04:56 14-07-2020
TeXpert



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
TheBarmaley, большое спасибо!
 
Напоследок: как эффективно извлечь кое-какую дополнительную информацию, типа номер поста и т. п. Есть переменные forum, topic, и postno
Код:
<a class=tpc href="postings.cgi?action=edit&forum=93&topic=3926&postno=5141">Редактировать</a>
а еще и start
Код:
<a class=tpc href="topic.cgi?forum=93&topic=3926&start=5140#2""><u>Отправлено:</u></a>
Вот параметр #2 в start разве не есть номер поста (на странице), а postno --- это абсолютный номер? Как, кстати, извлечь номер страницы (например, этот пост попадет, скорее всего, на 17-ю страницу))? А название форума, как тут:
Цитата:
Bookmarklets/Favelets/Букмарклеты

 
Заранее благодарен

----------
Майкудук, Пришахтинск не предлагать!:)
А на Пирогова приходит снова весенний гомон...

Всего записей: 3625 | Зарегистр. 08-02-2003 | Отправлено: 11:01 14-07-2020
TheBarmaley



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
TeXpert
Цитата:
извлечь кое-какую дополнительную информацию
1. думается мне, достаточно сохранять второй урл, который из "отправлено" - более чем точная привязка к посту..
его, кстати, можно сразу дублировать в новую "кнопку", напр., как-то так:
Код:
for(var i=0,b=document.querySelectorAll(".post");i<b.length;i++){  
    b[i].parentNode.firstChild.outerHTML="<a id="+i+" class='tpc' url='"+location.href.split('#')[0]+'#'+(i+1)+"' href=javascript: title='TestUserscript\nТекст'>Сохранить текст</a> | "+b[i].parentNode.firstChild.innerHTML;  
    document.getElementById(i).onclick=s;  
}
а потом просто брать этот (уже готовый) атрибут "кнопки" при клике по ней..
 
2. название топика можно выдрать из титла страницы, отрезав лишнее как угодно.. например:
Код:
var title = document.title.split(/\s-\s\[\d+\]\s::\s/)[0]
хотя можно и не резать, там ведь ещё и раздел указан..
 
вопчем, если надо всё это приклеить в сохранёнку, придётся ещё допилить саму функцию сохранения, добавляя полученное в начало формируемого текста, отбить можно по \n (переводом строки) или как-то ещё..

----------
..the one of.. ··· ..sam-&-pol..

Всего записей: 17813 | Зарегистр. 07-06-2006 | Отправлено: 13:55 14-07-2020
Valivan77777



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Полистал, почитал, исправления, дополнения, так и не понял, какой финальный, рабочий скрипт для сохранения выделенного текста в файл? Выложите код, пожалуйста.

Всего записей: 1524 | Зарегистр. 11-12-2019 | Отправлено: 02:54 16-07-2020
VVL99

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Valivan77777

Цитата:
скрипт для сохранения выделенного текста в файл

VVL99 (пост)
Он?

Всего записей: 4158 | Зарегистр. 03-02-2011 | Отправлено: 09:09 16-07-2020 | Исправлено: VVL99, 09:10 16-07-2020
Valivan77777



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
VVL99
 
Оно, спасибо.  
 
А есть ещё такое поиск по сайту ру-боард.

Цитата:
qjavascript:void((function(){var a=prompt("text","");if(a!=null)window.open('https://www.google.ru/search?q='+a+'&sitesearch=gallery.ru-board.com')})())

В нём не совсем хорошо то что в браузере нужно включать показ всплывающих окон. Допилить как нибуть не получится, чтобы  не отключать эту настройку. Или может как то сразу страницу Гула открывал с такой вставкой site:gallery.ru-board.com

Всего записей: 1524 | Зарегистр. 11-12-2019 | Отправлено: 10:38 16-07-2020 | Исправлено: Valivan77777, 10:38 16-07-2020
VVL99

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Valivan77777
Второй вариант не подходит?
TheBarmaley TMP (пост)

Всего записей: 4158 | Зарегистр. 03-02-2011 | Отправлено: 10:53 16-07-2020
Valivan77777



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
VVL99

Цитата:
Второй вариант не подходит?

Да, второй вариант предпочтительнее. Спасибо.  
Блин, вот кто нибудь взялся бы и в одно место готовые марклеты засунул, с описанием. А так тут и готовые, и переделанные, , исправленные, ногу сломаешь.

Всего записей: 1524 | Зарегистр. 11-12-2019 | Отправлено: 11:52 16-07-2020
VVL99

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Сохраняет выделенный фрагмент кода в html.
Код:
javascript:(function(){var a=document.createElement("div");a.appendChild(window.getSelection().getRangeAt(0).cloneContents());for(var b=a.getElementsByTagName("a"),e=0;e<b.length;e++){b[e].href&&(b[e].href=b[e].href)};var f=window.getSelection();document.body.appendChild(a);a.innerHTML="<a href='"+location.href+"' target='_blank'>"+document.title+"</a><div style='color:#f00'>Скопировано: "+new Date().toLocaleString()+"</div><hr>"+a.innerHTML+"<hr>";f.selectAllChildren(a);document.execCommand("copy");var c=document.createElement("a");c.setAttribute("href","data:text/html,"+encodeURIComponent(a.outerHTML));c.setAttribute("download",new Date().toLocaleString()+".html");c.click();c.remove();a.remove()})();

 
https://jpegshare.net/images/49/dc/49dc6936bd54e3a5414766c44e34d516.png

Всего записей: 4158 | Зарегистр. 03-02-2011 | Отправлено: 12:07 16-07-2020 | Исправлено: VVL99, 23:14 17-07-2020
VVL99

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Автотранслит
Код:
javascript:(function(){var EnRuT=[["shh","щ"],["Shh","Щ"],["SHH","Щ"],["hh","х"],["Hh","Х"],["HH","Х"],["zh","ж"],["Zh","Ж"],["ZH","Ж"],["cz","ц"],["Cz","Ц"],["CZ","Ц"],["yu","ю"],["Yu","Ю"],["YU","Ю"],["yo","ё"],["Yo","Ё"],["YO","Ё"],["ya","я"],["Ya","Я"],["YA","Я"],["ch","ч"],["Ch","Ч"],["CH","Ч"],["sh","ш"],["Sh","Ш"],["SH","Ш"],["e`","э"],["E`","Э"],["y`","ы"],["Y`","Ы"],["``","ъ"],["`","ь"],["r","р"],["t","т"],["u","у"],["i","и"],["o","о"],["p","п"],["a","а"],["s","с"],["d","д"],["f","ф"],["g","г"],["j","й"],["k","к"],["l","л"],["z","з"],["x","х"],["c","ц"],["v","в"],["b","б"],["n","н"],["m","м"],["R","Р"],["T","Т"],["U","У"],["I","И"],["O","О"],["P","П"],["A","А"],["S","С"],["D","Д"],["F","Ф"],["G","Г"],["J","Й"],["K","К"],["L","Л"],["Z","З"],["X","Х"],["C","Ц"],["V","В"],["B","Б"],["N","Н"],["M","М"],["e","е"],["E","Е"]],A=document.activeElement;A.onkeyup=function ftr(){for(var s=A.value,i=0;i<EnRuT.length;i++){s=s.replace(RegExp(EnRuT[i][1],"g"),EnRuT[i][0])};A.value=s}})()

Ставим курсор в поле ввода, активируем букмарклет, и вместо кириллицы получаем транслит.

Всего записей: 4158 | Зарегистр. 03-02-2011 | Отправлено: 02:35 01-08-2020
VVL99

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
http://forum.ru-board.com/topic.cgi?forum=5&topic=50301&start=1884&limit=1&m=0#1

Всего записей: 4158 | Зарегистр. 03-02-2011 | Отправлено: 17:27 12-08-2020
TheBarmaley



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
http://forum.ru-board.com/topic.cgi?forum=5&topic=50301&start=1884&limit=1&m=0#1
боянЪ.. хотя и освежённый чутка..)
потому как есть: Как скачать расширение/приложение/тему из Chrome Web-Store
генерация, примеры и пр.. и ваще..  

----------
..the one of.. ··· ..sam-&-pol..

Всего записей: 17813 | Зарегистр. 07-06-2006 | Отправлено: 18:39 12-08-2020 | Исправлено: TheBarmaley, 18:40 12-08-2020
VVL99

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
TheBarmaley
У нас совсем про другое.

Всего записей: 4158 | Зарегистр. 03-02-2011 | Отправлено: 18:41 12-08-2020
TheBarmaley



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
VVL99
это "другое" - по сути - те же, но в профиль..
строка скачивания из гуглозина известна давным давно, смысла дублить здесь не вижу..

----------
..the one of.. ··· ..sam-&-pol..

Всего записей: 17813 | Зарегистр. 07-06-2006 | Отправлено: 18:47 12-08-2020
VVL99

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
http://forum.ru-board.com/topic.cgi?forum=5&topic=50301&start=1897&limit=1&m=0#1

Всего записей: 4158 | Зарегистр. 03-02-2011 | Отправлено: 19:34 12-08-2020 | Исправлено: VVL99, 15:35 13-08-2020
maks61



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Может, кто подскажет букмарклет для обхода возрастной блокировки 18+ на ютубе.
Такой раньше был, а счас не работает.
 
код:
javascript: location.href = location.href.replace("watch?v=", "embed/")
 
Добавлено:
Методы, предложенные тут, так-же не рабочие.

Всего записей: 759 | Зарегистр. 18-01-2013 | Отправлено: 18:40 26-02-2021 | Исправлено: maks61, 18:47 26-02-2021
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22

Компьютерный форум Ru.Board » Компьютеры » Программы » Bookmarklets | Favelets | Букмарклеты


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru