Скрипт против картинок Maximusa
Для Chrome - Tempermonkey
// ==UserScript== // @name javascript.ru // @namespace http://javascript.ru/ // @version 0.3 // @description enter something useful // @match http://*javascript.ru/* // @copyright 2012+, You // ==/UserScript== var on = 'addEventListener', off = 'removeEventListener', q = function (s, e) { var q, d = document, e = e || d, a = [], f, i; if (!s) { return d }; if (typeof e == 'function') { f = e; e = d; } q = e.querySelectorAll(s); for (i=0; i < q.length; i++) { if(f) { q[i] = f(q[i]); if(q[i]) {a.push(q[i])}} else {a.push(q[i])}} return a}; q('table td.alt1 div:first-child img', function (el) { el.style.maxWidth = '100px'; el.style.maxHeight = '100px'; el.addEventListener('click', function (e) { if (this.style.maxWidth == '100px') { this.style.maxHeight = '100%'; this.style.maxWidth = '100%'; this.style.width = '600px'; } else { this.style.maxWidth = '100px'; this.style.maxHeight = '100px'; } }, false); }); Для Firefox - Gracemonkey // ==UserScript== // @name javascript.ru // @namespace javascript.ru // @include http://*javascript.ru/* // @version 0.1 // @grant none // ==/UserScript== var on = 'addEventListener', off = 'removeEventListener', q = function (s, e) { var q, d = document, e = e || d, a = [], f, i; if (!s) { return d }; if (typeof e == 'function') { f = e; e = d; } q = e.querySelectorAll(s); for (i=0; i < q.length; i++) { if(f) { q[i] = f(q[i]); if(q[i]) {a.push(q[i])}} else {a.push(q[i])}} return a}; q('table td.alt1 div:first-child img', function (el) { el.style.maxWidth = '100px'; el.style.maxHeight = '100px'; el.addEventListener('click', function (e) { if (this.style.maxWidth == '100px') { this.style.maxHeight = '100%'; this.style.maxWidth = '100%'; this.style.width = '600px'; } else { this.style.maxWidth = '100px'; this.style.maxHeight = '100px'; } }, false); }); https://github.com/seolog/corn.js |
Если убрать if (node && node.innerHTML.search(/maxi/) != -1) { то все картинки будут уменьшаться.
|
запили как расширение что ли, а еще можно просто добавить его в игнор и не будешь видить его сообщений.
|
Цитата:
https://chrome.google.com/webstore/d...mpobfkfo?hl=ru Просто вставь вышеприведенный код. |
![]() |
Maxmaxmaximus6,
у меня уже подключен скрипт и я не вижу что ты там запилил. Какой же это кайф :) |
Gozar, не, спс, закину код в расширение)
|
Gozar, у меня не работает почему то, это расширение не выполняет скрипты на странице, в настойках дал доступ к ссылкам и прописал путь, это все что бы в faq, подключил
// ==UserScript== // @name javascript.ru // @namespace javascript.ru // @include [url]http://*javascript.ru/*[/url] // @version 1 // @grant none // ==/UserScript== |
// ==UserScript== // @name javascript.ru // @namespace javascript.ru // @include http://*javascript.ru/* // @version 2 // @grant none // ==/UserScript== var on = 'addEventListener', off = 'removeEventListener', q = function (s, e) { var q, d = document, e = e || d, a = [], f, i; if (!s) { return d }; if (typeof e == 'function') { f = e; e = d; } q = e.querySelectorAll(s); for (i of q) { if(f) { i = f(i); if(i) {a.push(i)}} else {a.push(i)}} return a}; q('table td.alt1 div:first-child img').forEach(function (el) { el.style.maxWidth = '100px'; el.style.maxHeight = '100px'; el.addEventListener('click', function (e) { if (this.style.maxWidth == '100px') { this.style.maxHeight = '100%'; this.style.maxWidth = '100%'; this.style.width = '600px'; } else { this.style.maxWidth = '100px'; this.style.maxHeight = '100px'; } }, false); }); Новая версия. Работает с любыми картинками, а то вдруг он ник сменит. По клику увеличивает картинку. |
Gozar, короче заработало, только твой код ошибку выкидует.
|
Цитата:
|
Gozar, вот ошибка
Цитата:
(из за того что код сжат разбираться не стал) var on = 'addEventListener', off = 'removeEventListener', q = function (s, e) { var q, d = document, e = e || d, a = [], f, i; if (!s) { return d }; if (typeof e == 'function') { f = e; e = d; } q = e.querySelectorAll(s); for (i of q) { if(f) { i = f(i); if(i) {a.push(i)}} else {a.push(i)}} return a}; Если запустить из консоли так же вылетает ошибка. Цитата:
|
Цитата:
|
Цитата:
|
Обновил 1 сообщение. Смотри код для Chrome и Firefox.
|
Цитата:
for (i of q)переделал на кроссбраузерный вариант. Я уже на EcmaScript 6, гыгы :) |
поставил, заценил, работает )
можно было jQuery юзать, оно есть на странице. |
Цитата:
|
Цитата:
Да, да, совсем забыл. Вот ссылочка https://github.com/seolog/corn.js переходите пожалуйста, переводите денежки на кошелек, помогите в развитии или сокращении corn проекта ... или можно просто плюсануть в карму, а я вам лайков 100 штук вконтактиковых взамен шлепну на акк ... (это шутка, если кто не догонит) |
Цитата:
|
Цитата:
Цитата:
|
Gozar, вот почему ты мне давал ссылку на этот проект:)
|
Gozar,
q('#one')[0][off]('click', clkFunc, false); дальше не читал ![]() |
Цитата:
|
Gozar, ну я с ним согласен, синтаксис какой то извращенный:)
|
Цитата:
|
Цитата:
Цитата:
Gozar, сделай чтобы по клику зумить можно было, и открывалась галерея на все вложенные картинки в посте. |
Цитата:
|
пофиксил твой говнокод
// ==UserScript== // @name javascript.ru // @namespace [url]http://javascript.ru/[/url] // @version 0.3 // @description enter something useful // @match [url]http://*javascript.ru/*[/url] // @copyright 2012+, You // ==/UserScript== (function() { var selector = 'table td.alt1 div:first-child img'; var images = document.querySelectorAll(selector) || []; var imagesArr = Array.prototype.slice.call(images); imagesArr.forEach(function(image) { var zoom = false; image.style.maxWidth = '100px'; image.style.maxHeight = '100px'; image.addEventListener('click', function() { if (!zoom) { this.style.maxHeight = ''; this.style.maxWidth = ''; } else { this.style.maxWidth = '100px'; this.style.maxHeight = '100px'; } zoom = !zoom; }); }); }()); сжатая версия // ==UserScript== // @name javascript.ru // @namespace [url]http://javascript.ru/[/url] // @version 0.3 // @description enter something useful // @match [url]http://*javascript.ru/*[/url] // @copyright 2012+, You // ==/UserScript== (function(){var c=document.querySelectorAll("table td.alt1 div:first-child img")||[];Array.prototype.slice.call(c).forEach(function(a){var b=!1;a.style.maxWidth="100px";a.style.maxHeight="100px";a.addEventListener("click",function(){b?(this.style.maxWidth="100px",this.style.maxHeight="100px"):(this.style.maxHeight="",this.style.maxWidth="");b=!b})})})(); |
Maxmaxmaximus6, ахах, ты не пробывал просто не заливать идиотские картинки?
|
Цитата:
|
Цитата:
|
Цитата:
|
Цитата:
Цитата:
|
Maxmaxmaximus6, добавь что ли открытие в popup окне)
|
Цитата:
|
Цитата:
|
рефакторинг от папки
// ==UserScript== // @name javascript.ru // @namespace [url]http://javascript.ru/[/url] // @version 0.4 // @description enter something useful // @match [url]http://*javascript.ru/*[/url] // @copyright 2012+, You // ==/UserScript== (function() { var MIN_WIDTH = 100; var MAX_WIDTH = 700; var ANIMATION_TIME = 0.6; var selector = 'table td.alt1 div:first-child img'; var images = document.querySelectorAll(selector) || []; var imagesArr = Array.prototype.slice.call(images); imagesArr.forEach(function(image) { var zoom = false; image.style.maxWidth = MIN_WIDTH + 'px'; image.style.transition = ANIMATION_TIME + 's'; image.addEventListener('click', function() { this.style.maxWidth = (zoom ? MIN_WIDTH : MAX_WIDTH) + 'px'; zoom = !zoom; }); }); }()); |
Цитата:
|
Цитата:
[].slice.call(images); Короче и работает обычно быстрее (т.к. тут нет поиска идентификатора Array, а сразу ясно, что идёт работа с массивом) |
Часовой пояс GMT +3, время: 10:34. |