leshiy_odessa
// ==UserScript== // @name LJ spoilers // @namespace spoilers // @include http://*.livejournal.com/* // @version 1 // @run-at document-end // @grant none // ==/UserScript== for(var i=0;i<content.document.getElementsByClassName('ljcut-link-expand').length;i++) { content.document.getElementsByClassName('ljcut-link-expand')[i].click() }
...программисты словно войну какую-то ведут за свои обновления. Блин, почему сейчас повсюду мания ухудшать интерфейсы и делать их максимально неудобными?! Radiation
Отсутствует
mokujin
Всё тоже самое, открывается последний пост на странице.
Отсутствует
Если это положить в кнопку все открывает как нада. В Код. Из скрипта и у мя, тоже чёт не хочет.
...программисты словно войну какую-то ведут за свои обновления. Блин, почему сейчас повсюду мания ухудшать интерфейсы и делать их максимально неудобными?! Radiation
Отсутствует
ifln
Ура!!! Огромное спасибо, работает отлично.
// ==UserScript== // @name LJ spoilers // @namespace spoilers // @include http://*.livejournal.com/* // @version 1 // @run-at document-idle // @grant none // ==/UserScript== for(var i=0;i<content.document.getElementsByClassName('ljcut-link-expand').length;i++) { content.document.getElementsByClassName('ljcut-link-expand')[i].click() }
Отредактировано leshiy_odessa (19-02-2017 13:18:55)
Отсутствует
leshiy_odessa
Мне тут подсказали, использовать нужно так как сделано у yup
Отредактировано mokujin (19-02-2017 17:37:44)
...программисты словно войну какую-то ведут за свои обновления. Блин, почему сейчас повсюду мания ухудшать интерфейсы и делать их максимально неудобными?! Radiation
Отсутствует
1) Последнее время «подкладывают» гиперссылки внутри которых не тот адрес что виден. Есть ли какой скрипт исправляющий это, или может кто напишет?
Скрипты такие есть, да и свой написать не сложно. Но я предпочитаю на портить необратимо страничку, а использовать дополнение Redirect Bypasser.
И есть одна не решаемая никакими средствами проблема: воевать можно только со ссылками, подменяемыми средствами HTML. Подмену, выполняемую через JavaScript, зачастую, не только исправить, но даже и обнаружить невозможно.
Отредактировано yup (20-02-2017 00:58:40)
Отсутствует
// ==UserScript== // @name Reddit spoilers // @namespace spoilers // @include http*://*reddit.com/* // @version 1 // @run-at document-idle // @grant none // ==/UserScript== for(var i=0;i<content.document.getElementsByClassName('expando-button collapsed video').length;i++) { content.document.getElementsByClassName('expando-button collapsed video')[i].click()
Как исправить?
К примеру или рандомный тред
Отсутствует
vitalii201
var spoilers = document.getElementsByClassName('expando-button'); for (var i = 0; i < spoilers.length; i++) spoilers[i].click();
Добавлено 20-02-2017 18:06:12
тока где там спойлеры, на реддит, я так и не нашел.
Отредактировано mokujin (20-02-2017 18:06:12)
...программисты словно войну какую-то ведут за свои обновления. Блин, почему сейчас повсюду мания ухудшать интерфейсы и делать их максимально неудобными?! Radiation
Отсутствует
Как исправить?
Помогает перебор в обратном порядке:
var e = document.getElementsByClassName('expando-button collapsed video'); for(var i=e.length-1; i>=0; i--) e[i].click();
Отсутствует
mokujin, спасибо!
P.S.
yup и ваш код работает, спасибо!
Отредактировано vitalii201 (20-02-2017 18:51:27)
Отсутствует
И какой теперь оставить? )
ну тыж видишь, что разница в том что ищется. Несколько элементов с конца , как показал yup или один.
Если не глючит(не жмакает куда не надо) то оставляй более обширный вариант (с одним классом expando-button ).
Если глючит(жмакает туда куда не должно), то делай более узкий выбор элемента с несколькими классами "expando-button collapsed video" с обратным порядком.
...программисты словно войну какую-то ведут за свои обновления. Блин, почему сейчас повсюду мания ухудшать интерфейсы и делать их максимально неудобными?! Radiation
Отсутствует
Есть такая проблема. Магазин прячет весь список товаров и для продолжения списка нужно нажимать — "Еще 12 товаров". Пример — http://www.tavriav.ua/305/c305/
Возможно ли сразу открыть весь список?
Отсутствует
leshiy_odessa
То что пришло в голову, но пашет. Пока будешь крутить - будет жмакацца кнопка
// ==UserScript== // @name more-goods // @namespace default // @version 2.0 // @grant none // @include http://www.tavriav.ua/* // @run-at document-start // ==/UserScript== document.addEventListener("DOMMouseScroll", function(e) { var elem = document.getElementsByClassName("btn-link-i sprite-bf"); elem[0].click(); });
...программисты словно войну какую-то ведут за свои обновления. Блин, почему сейчас повсюду мания ухудшать интерфейсы и делать их максимально неудобными?! Radiation
Отсутствует
leshiy_odessa
function PressButton() { if ((document.getElementsByClassName("btn-link-i sprite-bf").length > 0) && (document.getElementsByClassName("btn-link-i sprite-bf hidden").length == 0)) { document.getElementsByClassName("btn-link-i sprite-bf")[0].click(); setTimeout(PressButton, 1000); } } setTimeout(PressButton, 1);
Отредактировано yup (27-02-2017 23:43:54)
Отсутствует
mokujin
Хитро. Сначала думал, что не работает ибо по привычке я скролю не колесиком, а полосой прокрутки. А её можно добавить?
Еще мне кажется что можно тогда сразу зациклить на N количество раз. N можно вычислять из количества страниц — <a href="/305/c305/page=17/" class="b-paginator-l-i-link txt-black">17</a>.
Или второй вариант, когда сама кнопка исчезает при появлении последней страницы.
Добавлено 27-02-2017 23:51:28
yup
Шо то не идет. Ничего не происходит.
update2 Ага догадался сделать // @run-at document-idle
update3 PressButton, 1000 — это как то жестоко.
Отредактировано leshiy_odessa (27-02-2017 23:58:56)
Отсутствует
замени "DOMMouseScroll" на просто "scroll" , будет жмакать при любом шевелинии страницы(думаю это не очень хорошо, но не уверен). Но онож подгружается снизу, полоска дергается... так шо лучше мышом, если ноут - двумя пальцами по тачпаду(найти прогу для своего ноута).
ну или клавишами ↑ ↓
...программисты словно войну какую-то ведут за свои обновления. Блин, почему сейчас повсюду мания ухудшать интерфейсы и делать их максимально неудобными?! Radiation
Отсутствует
mokujin
Со "scroll" просто волшебно. Скорость открытия впечатляет. Теперь бы скрестить вашу скорость с вариантом от yup. У yup оно делает то что нужно, открывает страницу, но видна задержка в ~500мс. А у mokujin хватаешь за ползунок и вжикаеш вниз и страница наполняется ну очень быстро.
update Черт, я понял что у yup 1000 это задержка, а не количество нажатий.
Отредактировано leshiy_odessa (28-02-2017 00:36:22)
Отсутствует
ну просто у мя за количество кликов отвечает сам бравзер, пока крутишь страницу, пока и будет искать и жмакать. Яж грил, это самое простое что можно.
yum тебе сделал собственный счетчик, кот. зависит от количества этих кнопок(показать еще) на данной странице. Кликает их столько раз, сколько найдет, через интервал. "Скорость" тут непричем ;-) ее вообще нет. Разные способы прост.
да, 1000 это задержка = ~1сек.
Отредактировано mokujin (28-02-2017 17:34:18)
...программисты словно войну какую-то ведут за свои обновления. Блин, почему сейчас повсюду мания ухудшать интерфейсы и делать их максимально неудобными?! Radiation
Отсутствует
Привет всем!
Господа, администрация одного хорошего сайта (закрытый трекер на базе TorrentPier II старой версии) удалила поддержку youtube в сообщениях на форуме.
К сожалению, не обладаю знаниями JavaScript и вся надежда только на Вас. Был бы признателен любой помощи. Помогите пожалуйста выполнить следующую задачу.
Необходимо заменять ссылки вида https://youtu.be/Bkq1PAyGuZY на HTML код плеера(фрейма). Ссылки движок трекера оборачивает в следующий код:
<div class="post_wrap">содержимое сообщения<br /><a href="https://youtu.be/Bkq1PAyGuZY" class="postLink">https://youtu.be/Bkq1PAyGuZY</a></div>
HTML код "плеера" (взял с YouTube)
<iframe src="https://www.youtube.com/embed/Bkq1PAyGuZY?ecver=2" width="640" height="360" frameborder="0" allowfullscreen></iframe>
В сети есть множество примеров, но без знаний JS применить их не получилось. Выручайте
Отредактировано Sality (15-03-2017 17:16:59)
Отсутствует
Sality
Как-то так:
var player, i, link, links = document.getElementsByClassName("postLink"); for (i = links.length-1; i >= 0; i--) { link = links[i]; if ((link.nodename == "A") || (link.hostname == "youtu.be") || (link.hostname == "youtube.com") || (link.hostname == "www.youtube.com")) { player = document.createElement("iframe"); player.src = "https://www.youtube.com/embed" + link.pathname + "?ecver=2"; player.width = 640; player.height = 360; player.frameBorder = 0; player.allowFullscreen = true; link.parentElement.replaceChild(player, link); } }
Отсутствует
Sality
Как-то так:Выделить кодКод:
var player, i, link, links = document.getElementsByClassName("postLink"); for (i = links.length-1; i >= 0; i--) { link = links[i]; if ((link.nodename == "A") || (link.hostname == "youtu.be") || (link.hostname == "youtube.com") || (link.hostname == "www.youtube.com")) { player = document.createElement("iframe"); player.src = "https://www.youtube.com/embed" + link.pathname + "?ecver=2"; player.width = 640; player.height = 360; player.frameBorder = 0; player.allowFullscreen = true; link.parentElement.replaceChild(player, link); } }
Большое Вам человеческое спасибо! Очень выручили
Этот часть кода вырезал, чтобы затрагивался только youtu.be. Ссылки вида *.youtube.com обрабатываются некорректно, но они и не нужны.
Написал это для тех, кто будет использовать этот код.
Еще раз благодарствую, настроение подняли
Отсутствует
Еще раз попрошу. Нужно разворачивать всё комментарии на dirty (показать комментарии от ....).
P.S. Заранее огромное спасибо.
Отредактировано leshiy_odessa (26-03-2017 23:31:51)
Отсутствует