Подскажите, почему может не срабатывать любой скрипт при старте браузера на домашней странице?
Mozilla Firefox 76
Greasemonkey 4.9
Скрипт любой, вплоть до
// ==UserScript==
// @name Hello
// @version 1
// @grant none
// ==/UserScript==
alert("HELLO");
Домашняя страница любая
Если нажать F5, то дальше срабатывает как часы. Но мне нуно чтобы он был запущен сразу при старте браузера.
При том иногда, примерно раз из 10 запусков скрипт срабатывает сразу, без обновления страницы.
Отсутствует
почему
Не заю. Но можно задать задержку.
// ==UserScript== // @name Hello // @version 1 // @grant none // ==/UserScript== (function(){ setTimeout(function(){ alert("HELLO")(); }, 3000); })();
Отсутствует
Andrey4, добавь в шапку
...программисты словно войну какую-то ведут за свои обновления. Блин, почему сейчас повсюду мания ухудшать интерфейсы и делать их максимально неудобными?! Radiation
Отсутствует
Не заю. Но можно задать задержку.
К сожалению не работает.
добавь в шапку
Тоже не работает.
Пришлось перейти на Tampermonkey, там всё отрабатывает как часы. Спасибо за помощь.
Отсутствует
всем привет. еще в 2017 году (пост https://forum.mozilla-russia.org/viewtopic.php?pid=733849#p733849) комраду помог некий способ, который не проканал у меня,
ситуация та же - RSS Feedbro при настройках отображения новости прямо в ридере новость не отображает - появляется Похоже, вас пытаются обмануть
frame's hostname: rutracker.org пользуюсь Tampermonkey, помогите допилить прошлый скрипт, чтобы убрать блкировку и вернуть отображение страницы
скрин
Отсутствует
всем привет. еще в 2017 году (пост https://forum.mozilla-russia.org/viewtopic.php?pid=733849#p733849) комраду помог некий способ, который не проканал у меня,
Я до сих пор им пользуюсь на стареньком 56.0.2.
Отсутствует
leshiy_odessa дружище, в двух словах подскажи как это реализовать, у мена ток не 56 а квантум и темпермонкей, какая инструкция - создать новый скрипт, вставляю (заменяя то что там типа шаблона) - но ТМ неактивен в этом окне, где Feedbro
кстати пока я был на даче изменилось сообщение
При соединении с rutracker.org произошла ошибка.
Firefox заблокировал данный способ загрузки этой страницы, так как страница имеет политику защиты содержимого, которая это запрещает.
Отредактировано Mrakobes666 (15-06-2020 20:51:35)
Отсутствует
подскажи как это реализовать, у мена ток не 56 а квантум
Без понятия.
Отсутствует
Без понятия.
вот что ответил автор расширения (перевод)
Этот сайт создается таким образом, что он "обнаруживает", когда он встроен в iframe. Тут уж ничего не поделаешь.
Однако вы можете добавить ленту и выбрать пункт "получить полное тело статьи" в раскрывающемся списке "содержимое записи ленты" (диалоговое окно "добавить ленту"). Затем вы можете использовать режим просмотра 3, и вы все еще видите содержимое статьи, и оно может быть обработано по правилам.
как побороть iframe то?
Отсутствует
Встроенный переводчик Firefox показывает панель перевода на...неруских сайтах. Можно сделать аналогичное срабатывание скрипта? Что-бы скрипт срабатывал везде, кроме русскоязычных, или с указанным списков кодов стран.
Сам скрипт: Google Translation Bar
Отредактировано oleg.sgh (16-07-2020 09:02:01)
Отсутствует
oleg.sgh
в общем случае это сложно. атрибут lang не все ставят. например на этом форуме его нет.
можно частично скрыть панель, напримор если адрес ru или есть lang.
но вообще сама идея - везде вставлять этот хлам - глупая.
леса живет в лису?
Отсутствует
CoolCmd
везде вставлять этот хлам - глупая.
Спасибо, что пользуетесь API Яндекс.Переводчика.
С 31 июля 2020 года вы сможете бесплатно переводить 50 000 символов в день, а с 15 августа 2020 года мы закрываем доступ к бесплатному API Яндекс.Переводчика.
Ищу варианты.
Отсутствует
CoolCmd
Я нашел лучше. Переводит автоматом с указанного языка.
Перевод веб-страниц
Отсутствует
Нужен скрипт - открыть любую ссылку в новой вкладке, на переднем плане (активной). Без клавиш модификаторов и прочих плюшек.
Помогите, кто чем может )
Отредактировано oleg.sgh (22-07-2020 10:04:29)
Отсутствует
oleg.sgh
Есть скрипт, который открывает ссылки в текущей вкладке(все, несмотря на trget и проя.) Не мой, чуть подправил, чтоб СКМ не отлавливал. Можешь поменять его логику:
// ==UserScript== // @name Open links in current tab // @author wOxxOm // @description Open links in current tab regardless of _target or site's preferences. Ctrl-click: background tab, Ctrl-Shift-click: foreground tab, Shift-click: new window, Alt-click: force open in current tab // @namespace http://target._blank.is.retarded // @version 2.2.7 // @include * // @exclude http*coub.com/* // @exclude http*vk.com/* // @exclude http*.userapi.com/* // @exclude http*.youtube.com/* // @exclude http*.googlevideo.com/* // @run-at document-start // @grant GM_openInTab // ==/UserScript== if (window == top) { window.addEventListener('message', function(e) { // some stupid sites choke on object data if (!/^\{/.test(e.data)) return; let data = tryParse(e.data); if (data.name == GM_info.script.name) navigate(data.url); }); } let suppressing, clickedElement, link; window.addEventListener('mousedown', function(e) { clickedElement = e.target; }, true); window.addEventListener('mouseup', function(e) { // Убрал действие на СКМ только ПКМ отслеживаеццо // if (e.button > 1 || e.target != clickedElement) if (e.button != 0 || e.target != clickedElement) return; link = pierceShadow(e); if (!link || (link.getAttribute('href') || '').match(/^(javascript|#|$)/) || !document.contains(link)) return; let b = e.button, c = e.ctrlKey, a = e.altKey, s = e.shiftKey, m = e.metaKey; if (b == 1 || c && !a && !m) // вот здесь надо начинать шаманить, менять условия КМК GM_openInTab(link.href, !s || b == 1); else if (window.chrome && b === 0 && s && !c && !a && !m) link.cloneNode().dispatchEvent(new MouseEvent('click', {shiftKey: true})); else if (!c && !s && !m && !a) { if (link.target == '_blank') link.target = ''; blockWindowOpenAndMutations(link); return; } else return; suppressing = true; prevent(e); }, true); window.addEventListener('click', prevent, true); window.addEventListener('auxclick', prevent, true); function prevent(e) { if (!suppressing) return; e.preventDefault(); e.stopPropagation(); e.stopImmediatePropagation(); setTimeout(function() { suppressing = false; }, 50); } function blockWindowOpenAndMutations(link) { let observer = new MutationObserver(function() { if (link.target == '_blank') { link.removeAttribute('target'); console.log('[Open links in current tab] prevented dynamic target=_blank for', link.href); navigate(link.href); } }); observer.observe(link, {attributes:true, attributeFilter:['target'], characterData:true}); let _open = unsafeWindow.open; let timeout = setTimeout(function() { unsafeWindow.open = _open; observer.disconnect(); }, 50); unsafeWindow.open = exportFunction(function(url, name, features) { if (!features) { console.log('[Open links in current tab] prevented window.open for', url); navigate(link.href); } else { _open(url, name, features); unsafeWindow.open = _open; clearTimeout(timeout); } }, unsafeWindow); } function pierceShadow(e) { let el = e.target; while (el.shadowRoot) el = el.shadowRoot.elementFromPoint(e.clientX, e.clientY); return el.closest('a'); } function navigate(url) { if (window == top) { link = document.createElement('a'); link.href = url; link.dispatchEvent(new MouseEvent('click')); } else { top.postMessage(JSON.stringify({name: GM_info.script.name, url: url}), '*'); } } function tryParse(str) { try { return JSON.parse(str); } catch(e) {} }
...программисты словно войну какую-то ведут за свои обновления. Блин, почему сейчас повсюду мания ухудшать интерфейсы и делать их максимально неудобными?! Radiation
Отсутствует
mokujin
вот здесь надо начинать шаманить
Если бы ещё знать что шаманить. В таком виде скрипт не работает.
Кстати, этот скрипт я видел, но не хватило тяму выкинуть его плюшки с модификаторами и СКМ.
Отредактировано oleg.sgh (22-07-2020 11:23:52)
Отсутствует
oleg.sgh
Попробуй, хз работает, нет, давно пользовался
Отредактировано Stkvsky (22-07-2020 13:13:43)
Отсутствует
Acid Crash
Скрипт перестал работать для каналов не из рекомендаций. У него, помимо проверки по окончанию "/featured", есть еще проверка по суффиксам /chennel/ и /user/, а теперь появился новый /c/. Добавил новый суффикс "c", вроде работает.
// ==UserScript== // @name YT channel shows Videos // @match https://www.youtube.com/* // @run-at document-start // @license MIT License // @grant none // ==/UserScript== (() => { const RX_CHANNEL_HOME = /^(https?:\/\/www\.youtube\.com\/(user|c|channel)\/[^/]+)(\/?$|\/featured)/; if (RX_CHANNEL_HOME.test(location.href)) { location.href = RegExp.$1 + '/videos'; return; } addEventListener('mousedown', event => { const a = event.target.closest('a'); if (a && RX_CHANNEL_HOME.test(a.href)) { a.href = RegExp.$1 + '/videos'; try { a.data.commandMetadata.webCommandMetadata.url = a.href; } catch (e) {} } }, true); })();
Отредактировано _zt (22-07-2020 13:39:06)
Отсутствует
Stkvsky
Не, через раз. Мне yup делал рабочий, но он неудобен в добавлении сайтов. Надо добавлять в двух местах. Хотелось бы сайты добавлять только в @include кода или в @include настройках скрипта.
// ==UserScript== // @name YandexTV // @namespace YTV // @include http*://tv.yandex.ru/* // @version 1 // @grant none // ==/UserScript== function getAnchor(element) { while (element && element.nodeName != "A") element = element.parentNode; return element; } document.addEventListener("click", function(e) { var hosts = [ "tv.yandex.ru" , "domain1.abc" , "domain2.def" ]; var anchor = getAnchor(e.target); if (hosts.indexOf(anchor.hostname) >= 0) anchor.target = "_blank"; });
Отсутствует
oleg.sgh
// ==UserScript== // @name Open Links In New Tab // @namespace Open Links In New Tab // @include http*://tv.yandex.ru/* // @grant none // @run-at document-start // ==/UserScript== document.addEventListener("click", (e) => { const anchor = e.target.closest("a[href]"); if (anchor) anchor.target = "_blank"; });
Отсутствует
ЗдравствуйтеС недавних пор Яндекс включил на своем сайте "Яндекс новости" фичу которая напрягает своей навязчивостью.Это автопрокруткаОчень стало неудобно.Я читаю несколько версий по теме из разных изданий, открываю и читаю страницу любой конкретной новости. Там есть список ссылок под заголовком "Подробнее о событии"Кликаю по любой из этих ссылок, она открывается в новом окне. потом возвращаюсь на исходную страницу, чтобы открыть другое СМИ, но страница уже прокручена вниз, чтобы я увидел и прочитал неинтересные мне новости.Приходится каждый раз листать вверх, чтобы отыскать первоначальную новость.Думаю что выполняется какой то скрипт на яндекс новостях.Может быть кто-нибудь посоветует скрипт способный заблокировать этот скрипт с автопрокруткой?
Отредактировано leex (18-10-2018 01:33:03)
leex похоже на глюк йандекса. вот это попробуй:
// ==UserScript==
// @name CoolCmd
// @version 1
// @match https://news.yandex.ru/*
// @grant none
// @run-at document-start
// ==/UserScript==
'use strict';
window.addEventListener(
'click',
e =>
{
if (e.button === 0
&& !e.shiftKey && !e.ctrlKey && !e.altKey && !e.metaKey
&& e.target.closest('a[href].link_agency'))
{
e.stopImmediatePropagation();
e.stopPropagation();
}
},
true
);
CoolCmd
Здравствуйте!
Ваш код к сожалению перестал работать. На яндекс новостях странца снова прокручиваестся вниз((
Сможете ли подправить?
Отредактировано leex (30-08-2020 15:27:49)
Отсутствует