Public entries tagged #yandex

swipe to read

Я забегаю в тупик — в тупике пш-пш-пш,
Сидит в шезлонге и пш-пш-пш...

.

00

Автоматизируем 300.ya.ru

Ну что ж, пришлось попинать изрядно, зато теперь имеем рабочую версию юзерскрипта. Положу сюда:

github.com/Johan-foreva/300.ya

Скрипт делает простую вещь: если ссылка содержит фрагмент («якорь», «хеш»), т.е. 300.ya.ru/#SOME_URL — скрипт возьмет его, вставит в окошко ввода, как только оно подгрузится, и сам нажмет кнопку. Почему так? Потому что безопасность браузера не позволяет читать буфер обмена без лишних телодвижений, а так — работает вполне прозрачно.

Как пользоваться:

  1. Если у вас уже открыт ролик, можете прямо в ардесной строке написать перед ним 300.ya.ru/#
  2. Или сделать :javascript:(()=>{window.open('https://300.ya.ru/#'+encodeURIComponent(location.href),'_blank')})();В новом окне откроется.
  3. Или другой, который возьмет текст, выделенный на странице:javascript:(()=>const t=window.getSelection().toString().trim();const d=t)();
  4. Ну и самый длинный вариант — тыкнуть ПКМ по ссылке, «Копировать ссылку», потом два раза на букмарклет (потому что появится кнопка-подтверждение, для вашей, блин, безопасности).javascript:(async()=>{try{const text=await navigator.clipboard.readText();if(!text||!text.trim()){alert('%D0%91%D1%83%D1%84%D0%B5%D1%80 %D0%BF%D1%83%D1%81%D1%82');return;}const w=window.open('about:blank','_blank');if(!w){alert('Popup %D0%B7%D0%B0%D0%B1%D0%BB%D0%BE%D0%BA%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD');return;}w.location.href='https://300.ya.ru/#'+encodeURIComponent(text);}catch(e){alert('%D0%9D%D0%B5%D1%82%20%D0%B4%D0%BE%D1%81%D1%82%D1%83%D0%BF%D0%B0%20%D0%BA%20%D0%B1%D1%83%D1%84%D0%B5%D1%80%D1%83');}})();
00

Навиброкодил связочку из 'а и 'а, при помощи которых можно отправлять -ролики прямо в 300.ya.ru

Конечно, не совсем прямо, в сумме получается 4 клика (2, чтобы скопировать, 2 чтобы вставить). Но зато только мышкой.

1) Букмарклет

javascript:(async()=>{try{const text=await navigator.clipboard.readText();if(!text||!text.trim()){alert('Буфер пуст');return;}const w=window.open('about:blank','_blank');if(!w){alert('Popup заблокирован');return;}w.location.href='https://300.ya.ru/#'+encodeURIComponent(text);}catch(e){alert('Нет доступа к буферу');}})();

2) Юзерскрипт

// ==UserScript==
// @name 300.ya.ru Auto Paste via Hash
// @namespace http://tampermonkey.net/
// @version 1.0
// @match https://300.ya.ru/*
// @run-at document-end
// ==/UserScript==

(function() {
'use strict';

const data = decodeURIComponent(location.hash.slice(1) || '');
if (!data) return;

const textarea = document.querySelector('textarea[placeholder*="текст"], textarea[placeholder*="ссыл"], textarea, .textarea');
if (!textarea) return;

const setter = Object.getOwnPropertyDescriptor(HTMLTextAreaElement.prototype,'value')?.set;
if(setter) setter.call(textarea,data); else textarea.value = data;
textarea.dispatchEvent(new Event('input',{bubbles:true}));

setTimeout(()=>{
const btn=document.querySelector('button[aria-label*="Отправ"], .submit, button[type="submit"]');
if(btn) btn.click();
},100);
})();

Копируем ссылку на YouTube-ролик, жмякаем букмарклет (2 клика, т.к. появится кнопка «Вставить» в целях безопасности). Откроется страничка Яши, и дальше уже всё само.

00
13

Subscribe to #yandex entries via RSS feed