Полезная информация

Многие проблемы быстрее решаются поиском по форуму и чтением FAQ, чем созданием новой темы и томительным ожиданием ответа.

№35106-02-2013 20:17:44

Kamui
Участник
 
Группа: Members
Зарегистрирован: 31-03-2011
Сообщений: 1796
UA: Firefox 19.0

Re: Greasemonkey

Infocatcher пишет:

http://wiki.greasespot.net/Include_and_ … xpressions

Почитал, попробовал в GM, получилось.

Infocatcher пишет:

Всегда 424863?

Нет, там не всегда, это номер топика, решил это вот так: [0-9]*$

Infocatcher пишет:

Плюс всегда можно отфильтровать лишнее уже в самом скрипте.

Использую UserScriptLoader и похоже он не поддерживает регулярки в include, придется делать так, не подскажешь как реализовать?
Код скрипта простой:

Выделить код

Код:

function findPos(obj) {
    var curtop = 0;
    if (obj.offsetParent) {
        do {
            curtop += obj.offsetTop;
        } while (obj = obj.offsetParent);
    return [curtop];
    }
}
window.scroll(0,findPos(document.getElementById("topicmenu-options")));

Отредактировано Kamui (06-02-2013 20:18:02)

Отсутствует

 

№35206-02-2013 21:49:17

Infocatcher
Not found
 
Группа: Extensions
Зарегистрирован: 24-05-2007
Сообщений: 4282
UA: Firefox 18.0

Re: Greasemonkey

Kamui
Ну так в самом начале добавить что-нибудь вроде

Выделить код

Код:

if(!/^http:\/\/4pda\.ru\/forum\/index\.php\?showtopic=\d+$/.test(location.href))
    return;

Если return не работает, а выдает ошибку, то код лучше завернуть в функцию, а то переменные могут на страницу попасть (смотря как запускается).

И не проще

Выделить код

Код:

document.getElementById("topicmenu-options").scrollIntoView();

?

Добавлено 06-02-2013 21:50:16
И есть специально обученный getBoundingClientRect().

Отредактировано Infocatcher (06-02-2013 21:50:16)


Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела

Отсутствует

 

№35306-02-2013 22:45:34

Kamui
Участник
 
Группа: Members
Зарегистрирован: 31-03-2011
Сообщений: 1796
UA: Firefox 19.0

Re: Greasemonkey

Выделить код

Код:

document.getElementById("topicmenu-options").scrollIntoView();

Спасибо, так и сделал :)

Infocatcher пишет:

И не проще

Просто код я не сам писал, то что нашел и смог использовать.

Отсутствует

 

№35427-02-2013 13:33:32

Inko7
Участник
 
Группа: Members
Зарегистрирован: 09-11-2009
Сообщений: 900
UA: Firefox 19.0

Re: Greasemonkey

Есть такой старенький замечательный скриптик для показа превью картинок при наведении на ссылку:

Выделить код

Код:

// ==UserScript==
// @name           Image previewer
// @author         Awesumness
// @Notes          Enjoy.
// @include        *
// @require        http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js
// ==/UserScript==
var url;
var image;
var x;
var y;
var w;
var h;
var hflip;

$(document).ready(function() {
  setTimeout(fixedYet,2000);
});

var fixedYet = function() {
  $("a[href*='.png'],a[href*='.gif'],a[href*='.jpg'],a[href*='.jpeg']")
  .removeAttr("title")
  .hover(imaGen)
  .mousemove(imaGen)
  .mouseout( function() {
    image.css({"display":"none"});
  });
}

function imaGen(e) {
  url = $(this).attr("href");
  image = $("body > img.awesumImgPre[src='" + url + "']");

  if ( image.length < 1 ){
    $("body").append("<img class='awesumImgPre' src='" + url + "'/>");
    image = $("body > img.awesumImgPre[src='" + url + "']");
    image.css({
    "position":"fixed",
    "z-index":"9001",
    "max-width":window.innerWidth/2,
    "max-height":window.innerHeight/2});
  }

  image.css({"display":"block"});

  x = e.pageX + 20 - window.pageXOffset;
  y = e.pageY + 20 - window.pageYOffset;
  flipit();


}




function flipit(){
    w = parseInt(image.css("width"));
    h = parseInt(image.css("height"));
    if(w == 0){
      setTimeout(flipit,100);
    }else{
      hflip = false;

      if(x+w+20 > window.innerWidth){
        x-=w;
        hflip = true;
      }
      if(y+h+20 > window.innerHeight){
        y-=h;
        if(hflip)
          x-=40;
      } 
      image.css({
      "left":x,
      "top":y});
    }
}

Он начинает работать, когда страница полностью загружена и её части больше не обновляются.
Можно ли что-то изменить в скрипте, чтобы он все-таки обрабатывал ссылки, которые появились при частичном обновлении страницы (например, в чатах) или после подгрузки страницы через собственные механизмы или с помощью AutoPagerize?
Если такое возможно, то будет просто замечательно.

Отсутствует

 

№35524-03-2013 18:11:20

gapi
Участник
 
Группа: Members
Зарегистрирован: 05-12-2012
Сообщений: 22
UA: Firefox 19.0

Re: Greasemonkey

Возможно кому то покажется мой вопрос смешным, но мне хотелось бы все же узнать ответ.
В [firefox] установлено приложение Greasemonkey. Через это приложение на открывающиеся сайты подключается пользовательские скрипты. Внимание вопрос: Те скрипты которые от компании сайта(оригинальные) загружаться будут? Или сразу же сработает пользовательский? Или быть может сначала загрузиться скрипт сайтовский, а потом уже его перекроет пользовательский? (Прошу извинения за такое объяснение).

Отсутствует

 

№35624-03-2013 18:50:45

Zaycoff
Участник
 
Группа: Extensions
Зарегистрирован: 18-02-2012
Сообщений: 1410
UA: Firefox 19.0

Re: Greasemonkey

gapi
Насколько я понимаю из FAQ Greasemonkey, то скрипты работают параллельно, но пользовательские имеют несколько боле высокий приоритет для выполнения некоторых операций:

Greasemonkey lets you add JavaScript code (called "user scripts") to any web page, which will run when its HTML code has loaded. Compared to writing extensions, user scripts often offer a light-weight alternative, requiring no browser restart on user script installation nor removal, and work with the common DOM API familiar to any web developer (with somewhat elevated privileges for doing cross domain XMLHttpRequest requests and storing small portions of private data). User scripts work more or less like bookmarklets automatically invoked for any URLs matching one or more glob patterns.

Отсутствует

 

№35724-03-2013 19:01:04

gapi
Участник
 
Группа: Members
Зарегистрирован: 05-12-2012
Сообщений: 22
UA: Firefox 19.0

Re: Greasemonkey

Zaycoff Спасибо. Ответ получил.

Возник следующий вопрос: А можно ли как-то заблокировать скрипты "оригинальные", что бы только пользовательские работали? (user.js или userContent.css - это не оно?)

Отсутствует

 

№35824-03-2013 20:04:47

Zaycoff
Участник
 
Группа: Extensions
Зарегистрирован: 18-02-2012
Сообщений: 1410
UA: Firefox 19.0

Re: Greasemonkey

gapi пишет:

А можно ли как-то заблокировать скрипты "оригинальные", что бы только пользовательские работали?

NoScript - тотальная блокировка скриптов.

Adblock Plus (в окне нажимаете Ctrl+Shift+V и создаёте правила запрещающие загрузку ненужных скриптов)

Отсутствует

 

№35924-03-2013 21:37:23

gapi
Участник
 
Группа: Members
Зарегистрирован: 05-12-2012
Сообщений: 22
UA: Firefox 19.0

Re: Greasemonkey

Zaycoff пишет:

gapi пишет:

А можно ли как-то заблокировать скрипты "оригинальные", что бы только пользовательские работали?

NoScript - тотальная блокировка скриптов.

Adblock Plus (в окне нажимаете Ctrl+Shift+V и создаёте правила запрещающие загрузку ненужных скриптов)

Установленны оба этих дополнения. Но ведь NoScript и пользовательские скрипты тогда блокирует?!(Или я ошибаюсь?)

Отсутствует

 

№36024-03-2013 21:45:25

Zaycoff
Участник
 
Группа: Extensions
Зарегистрирован: 18-02-2012
Сообщений: 1410
UA: Firefox 19.0

Re: Greasemonkey

gapi пишет:

Но ведь NoScript и пользовательские скрипты тогда блокирует?!(Или я ошибаюсь?)

Не блокирует... :rolleyes:

Отсутствует

 

№36128-03-2013 02:16:04

gapi
Участник
 
Группа: Members
Зарегистрирован: 05-12-2012
Сообщений: 22
UA: Firefox 19.0

Re: Greasemonkey

Есть ли скрипт который подключал плеер на сайте "вконтакте" для воспроизведения видео и музыки в HTML5?
Может кому-то интересно такое соорудить?

Отсутствует

 

№36228-03-2013 03:11:13

Zaycoff
Участник
 
Группа: Extensions
Зарегистрирован: 18-02-2012
Сообщений: 1410
UA: Firefox 19.0

Re: Greasemonkey

gapi пишет:

Есть ли скрипт который подключал плеер на сайте "вконтакте" для воспроизведения видео и музыки в HTML5?

vkontakte html5 music

Отсутствует

 

№36328-03-2013 03:24:10

gapi
Участник
 
Группа: Members
Зарегистрирован: 05-12-2012
Сообщений: 22
UA: Opera 12.1

Re: Greasemonkey

Zaycoff пишет:

gapi пишет:

Есть ли скрипт который подключал плеер на сайте "вконтакте" для воспроизведения видео и музыки в HTML5?

vkontakte html5 music

что то он не работает у меня. а у Вас?

Отсутствует

 

№36428-03-2013 12:30:52

Zaycoff
Участник
 
Группа: Extensions
Зарегистрирован: 18-02-2012
Сообщений: 1410
UA: Firefox 19.0

Re: Greasemonkey

gapi пишет:

что то он не работает у меня. а у Вас?

Без понятия, соцсетями не увлекаюсь :music:

Попробуйте написать автору (открыть дискуссию на их форуме), судя по всему он русскоговорящий, может допилит...

Отсутствует

 

№36501-04-2013 21:32:33

feas
Участник
 
Группа: Extensions
Откуда: от DNS
Зарегистрирован: 25-08-2011
Сообщений: 5202
UA: Firefox 21.0
Веб-сайт

Re: Greasemonkey

http://userscripts.org/topics/96845?page=2 На литебите что-то подкрутили - перестало пахать - кто нить нашел ещё обходные пути?


Добро пожаловать на форум mozilla-russia.org. Здесь вы можете посоветоваться или обратиться за помощью к фанатам и пользователям продуктов Мозиллы. Если не знаете как правильно оформить пост специально для вас расписан пункт 2.2 правил форума
Сброс на примере Firefox – лёгкое решение большинства проблем
Починка браузера. Перенос своих настроек на новый профиль.

Отсутствует

 

№36617-04-2013 09:46:53

geczu
Участник
 
Группа: Members
Зарегистрирован: 02-11-2012
Сообщений: 244
UA: Firefox 20.0

Re: Greasemonkey

Нужно блокировать запрос на подтверждение выхода и получение сайтом даты.
http://javascript.about.com/library/blexitblock.htm

https://userscripts.org/scripts/show/164775

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

Отсутствует

 

№36717-04-2013 10:56:11

CoolCmd
Участник
 
Группа: Members
Зарегистрирован: 29-09-2008
Сообщений: 607
UA: Firefox 20.0

Re: Greasemonkey

geczu пишет:

Не работает первый.

в статье ведь написано, что не все используют onbeforeunload. возможно вики использует событие beforeunload. что бы его отключить, нужно перехватить и вызвать stopPropagation.

geczu пишет:

И не слишком ли простой второй?

лучше вернуть какуюнить реальную дату, например 01.01.1980.
Only XT users know that January 1, 1980 was a Tuesday. :D


а вы разводите лесных лес?

Отсутствует

 

№36817-04-2013 18:20:48

geczu
Участник
 
Группа: Members
Зарегистрирован: 02-11-2012
Сообщений: 244
UA: Firefox 20.0

Re: Greasemonkey

CoolCmd
Не знаете скрипта для предотвращения beforeunload?

А дату лучше вернуть текущую, только подправленную под США или Гринвич. Только вопрос. Если превести есть функции приведения даты к другой форме и не меняется ли она при приведении?

Отсутствует

 

№36924-04-2013 17:35:10

1fesFFFF
Участник
 
Группа: Members
Зарегистрирован: 22-01-2010
Сообщений: 225
UA: Firefox 21.0

Re: Greasemonkey

Можно ли реализовать возможность, чтобы при открытии любого видео youtube в ссылку добавлялось no-cache и соответственно загрузка шла по новой ссылке?
Подробнее: Disable caching YouTube videos

Отсутствует

 

№37003-05-2013 15:40:09

iDev.Pi
баг-репортёр
 
Группа: Extensions
Зарегистрирован: 31-01-2010
Сообщений: 2718
UA: Firefox 20.0

Re: Greasemonkey

Посоны, а давайте вместе бороться с каками в поисковой выдаче поисковиков (янделя и гугеля)?
Когда, например, в Яндекс вводишь запрос в виде вопроса, то в поисковой выдаче очень много результатов, ведущих на фродовые дорвеи (fraud doorway, мошеннический одностраничный сайт), маскирующиеся под форумы. Они существовали и раньше, но сейчас я заметил, что их научились делать по динамичным шаблонам, вы только взгляните на вот эти сайты и увидите сходства и различия:


Отличий у таких сайтов от нормальных - я заметил всего два:
1. У них у всех одинаковая фавиконка
2. Возможно, такие сайты есть не уже и не только в ru-зоне, но мне пока попадались только такие. А вот формат URL:

Выделить код

Код:

%имясайта%.ru/%вопрос%.html

Юзернеймы знающие js, создайте защиту от таких сайтов, пожалуйста.

Список @include правил
// @include     http://www.google.*/search?*
// @include     https://www.google.*/search?*
// @include     http://www.google.*/webhp?*
// @include     https://www.google.*/webhp?*
// @include     http://www.google.*/#*q=*
// @include     https://www.google.*/#*q=*
// @include     http://www.google.*/
// @include     https://www.google.*/
// @include     https://encrypted.google.com/search?*
// @include     https://encrypted.google.com/#*q=*
// @include     http://yandex.*/yandsearch?*
// @include     https://yandex.*/yandsearch?*

1. В поисковой выдаче яндекса отображаются фавиконки сайтов. Можно фильтровать все, с такой фавиконкой: https://a248.e.akamai.net/camo.github.com/60453e85687ea0e4fb12911ee8aee3b987a67aa7/687474703a2f2f6b616b757374616e6f76697476696c6b752e72752f66617669636f6e2e69636f, но
а. в выдаче гугла нет фавиконок, вариант подходит только для яндекса.
б. иногда в выдаче яндекса фавиконки у некоторых сайтов не отображаются совсем.
в. ради ускорения загрузки и облегчения веса страницы - яндекс собирает все фавиконки в единый файл.
2. Можно делать regex проверку урла сайта, но думаю, что будет много ложных срабатываний.
3. Можно приделать в скрипт возможность отправки куда-то урла сайта, чтобы юзеры скрипта могли рапортовать о новых найденных фрод-дорвеях, а кто-то будет собирать этот список, проверять и пополнять.

У кого-нибудь есть ещё идеи по этому поводу?

Добавлено 03-05-2013 15:45:12
Гм, а в гугле таких сайтов чего-то я пока совсем не вижу: сравните выдачу яндекса и гугеля по этому запросу:
скрытый текст
как удалить слово из словаря Т9 android inurl:kak

Отредактировано iDev.Pi (03-05-2013 15:49:44)


mzfx

Отсутствует

 

№37103-05-2013 16:10:06

Pony_Smile_Pack
Участник
 
Группа: Members
Зарегистрирован: 13-01-2012
Сообщений: 1144
UA: Firefox 20.0

Re: Greasemonkey

Просто гуглом пользоватся. Раз яндекс выдаёт каки.

iDev.Pi пишет:

в выдаче гугла нет фавиконок

GoogleMonkeyR for Greasemonkey
http://savepic.ru/4480044m.jpg

Faviconize Google (nested icons) for Greasemonkey

Отредактировано Pony_Smile_Pack (03-05-2013 17:43:31)

Отсутствует

 

№37203-05-2013 16:12:32

iDev.Pi
баг-репортёр
 
Группа: Extensions
Зарегистрирован: 31-01-2010
Сообщений: 2718
UA: Firefox 20.0

Re: Greasemonkey

Pony_Smile_Pack пишет:

Просто гуглом пользоватся. Раз яндекс выдаёт каки.

Я, пожалуй, буду пользоваться и Яндексом и Гуглом, а каки победить хочется.

Pony_Smile_Pack пишет:

GoogleMonkeyR for Greasemonkey

Я не люблю столь злые скрипты: это же сколько дополнительных запросов он будет генерировать на массу различных сайтов и насколько это замедлит загрузку страницы.
Нет, спасибо.


mzfx

Отсутствует

 

№37303-05-2013 17:31:47

iDev.Pi
баг-репортёр
 
Группа: Extensions
Зарегистрирован: 31-01-2010
Сообщений: 2718
UA: Firefox 20.0

Re: Greasemonkey

На всякий случай, пожаловался Яндексу.


mzfx

Отсутствует

 

№37416-05-2013 19:06:04

iDev.Pi
баг-репортёр
 
Группа: Extensions
Зарегистрирован: 31-01-2010
Сообщений: 2718
UA: Firefox 21.0

Re: Greasemonkey

iDev.Pi пишет:

На всякий случай, пожаловался Яндексу.

Ответа не прислали, но похоже сайты забанили в поисковой выдаче


mzfx

Отсутствует

 

№37517-05-2013 20:31:27

rbfyec
Участник
 
Группа: Members
Зарегистрирован: 07-07-2012
Сообщений: 365
UA: Firefox 20.0

Re: Greasemonkey

Помогите довести до ума букмарклет show hidden elemens. Нужно, чтобы не открывалась пустая страница со словом "block"

Выделить код

Код:

javascript:var tags=document.getElementsByTagName("*");for(var tg in tags){try{if(tags[tg].style.display=="none")tags[tg].style.display="block";}catch(e){}}

Отредактировано rbfyec (17-05-2013 20:32:45)

Отсутствует

 

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2011 Mozilla Russia
Язык отображения форума: [Русский] [English]