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

В мире Mozilla происходит много интересных событий. Но вам не нужно постоянно посещать новостные сайты, чтобы быть в курсе всех изменений. Зайдите на ленту новостей Mozilla Россия.

№317622-10-2011 20:00:56

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

Re: Custom Buttons

okkamas_knife пишет

А устроит вариант если при нажатии кнопки вверху странички будет появляться точно такая же форма с уже заполненными полями?

Спасибо. За неимением другого, в принципе устроит и такой. Свою задачу кнопка выполняет - уже хорошо!
Можно ли как-то покрасивее форму выводить: во всплывающем окошке или хотя бы просто отцентровать то, что есть?

Отредактировано Inko7 (22-10-2011 20:03:56)

Отсутствует

 

№317722-10-2011 20:49:17

SendInfo
.
 
Группа: Members
Зарегистрирован: 14-02-2011
Сообщений: 271
UA: Firefox 7.0

Re: Custom Buttons

bunda1
Пропал скроллбар и больше не появляется

Отсутствует

 

№317822-10-2011 21:04:36

mserv
Участник
 
Группа: Members
Зарегистрирован: 15-11-2008
Сообщений: 1025
UA: Nightly 10.0

Re: Custom Buttons

SendInfo пишет

Пропал скроллбар и больше не появляется

А если снова нажать кнопку и перезагрузить страницу?

Отсутствует

 

№317922-10-2011 21:12:10

SendInfo
.
 
Группа: Members
Зарегистрирован: 14-02-2011
Сообщений: 271
UA: Firefox 7.0

Re: Custom Buttons

mserv
Да, проблема в том, что если выключить и включить отображение, что скроллбар окажется где-нибудь очень малых размеров.
Вынес browserreload вне if, дак он не запоминает уровень прокрутки

Отсутствует

 

№318022-10-2011 21:15:39

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 3.6

Re: Custom Buttons

SendInfo пишет

Пропал скроллбар и больше не появляется

Разве не такую кнопку ты хотел ?

Отсутствует

 

№318122-10-2011 21:24:32

SendInfo
.
 
Группа: Members
Зарегистрирован: 14-02-2011
Сообщений: 271
UA: Firefox 7.0

Re: Custom Buttons

bunda1
Я хотел кнопкой. Целиком её я б и через usercontent.css убрал

Отсутствует

 

№318222-10-2011 21:33:12

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 3.6

Re: Custom Buttons

SendInfo пишет

bunda1
Я хотел кнопкой. Целиком её я б и через usercontent.css убрал

Эсли снова нажать кнопку то в новых окнах и страницах скроллбар будет.

Отсутствует

 

№318322-10-2011 21:36:55

SendInfo
.
 
Группа: Members
Зарегистрирован: 14-02-2011
Сообщений: 271
UA: Firefox 7.0

Re: Custom Buttons

bunda1
Да в общем то ладно. Перезагрузку страницы я переживу. Всё равно спасибо

Отсутствует

 

№318422-10-2011 22:11:13

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

Re: Custom Buttons

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

Отсутствует

 

№318522-10-2011 22:35:28

mserv
Участник
 
Группа: Members
Зарегистрирован: 15-11-2008
Сообщений: 1025
UA: Nightly 10.0

Re: Custom Buttons

bunda1 пишет

У меня не работает  autocopy.  И ещё после ПКМ - настроить в контекстном меню вкладок происходит дублирование пунктов:
Копировать заголовок +адрес
Копировать как HTML ссылку
Копировать как BBCode ссылку

И они добавляются столько раз, сколько нажимаю ПКМ - настроить, т.е. может быть и по пять, шесть.… Пропадают только после рестарта [firefox]. Можете исправить, или это только у меня так?

Отсутствует

 

№318622-10-2011 22:37:59

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

Re: Custom Buttons

okkamas_knife
теперь говорит, что введены ошибочные данные:| (всё вводил верно и в первом варианте вопросов не возникало)
пробовал менять задержку в большую сторону, но она только отодвигала открытие самой страницы и всё
наверное порядок действий не тот: сначала нужно сайт открыть, а затем форму запускать.
сейчас же всё наоборот: сначала форма открывается/заполняется, а затем уж и сайт

Отсутствует

 

№318723-10-2011 04:51:37

Munchauzen
Участник
 
Группа: Members
Зарегистрирован: 13-10-2011
Сообщений: 27
UA: unknown 0.0
Веб-сайт

Re: Custom Buttons

Infocatcher
Я поставил все последней версии. Все равно ошибка. Вот что пишет:

Ошибка: uncaught exception: [Exception... "Node was not found"  code: "8" nsresult: "0x80530008 (NS_ERROR_DOM_NOT_FOUND_ERR)"  location: "chrome://custombuttons/content/button.js?windowId=Firefox&id=custombuttons-button48@code Line: 448"]

Скопировал в блокнот, 448 строка

this.mp.insertBefore(mi, insPoint || this.$(this.sepId));

Отредактировано Munchauzen (23-10-2011 04:55:36)

Отсутствует

 

№318823-10-2011 10:45:57

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

Re: Custom Buttons

okkamas_knife пишет

тогда попробуй заменить about:blank на адрес сайта,

вот теперь порядок! спасибо.

Отсутствует

 

№318923-10-2011 15:32:22

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

Re: Custom Buttons

Год назад проскакивала инфа про кнопочку Popup-toolbar.
Код кнопки удалось вытащить из архива сайта:

Popup-toolbar

Выделить код

Код:

/*Initialization code*/
 
var popupToolbarName = "";
var popupToolbarId = "";
var popupId = "";
var contextPopupId = "popuptoolbar-contextpopup";
 
this.type = "menu";
this._init = function() {
  popupToolbarName = this.label;
  popupToolbarId = "__customToolbar_" + popupToolbarName.replace(" ", "_");
  popupId = popupToolbarName.replace(" ", "").toLowerCase() + "-" + this.type + "popup";
 
  var popupToolbar = document.getElementById(popupToolbarId);
  if (popupToolbar) {
    popupToolbar.setAttribute("collapsed", "true");
    document.persist(popupToolbarId, "collapsed");
  }
 
  var popup = document.getElementById(popupId);
  if (popup) {
    popup.hidePopup();
    popup.parentNode.removeChild(popup);
  }
 
  popup = document.getElementById("mainPopupSet").appendChild(document.createElement("menupopup"));
  popup.setAttribute("id", popupId);
  popup.setAttribute("position", "after_start");
 
  if (this.type == "menu") {
    while (this.firstChild && this.firstChild.localName == "menupopup") {
      this.firstChild.hidePopup();
      this.removeChild(this.firstChild);
    }
    this.appendChild(popup);
    popup.setAttribute("onpopupshowing", 'this.parentNode.setPopup(event);');
  }
  else {
    popup.setAttribute("onpopupshowing", 'document.popupNode.setPopup(event);');
  }
 
  popup.setAttribute("onpopupshown", '{\
    window.addEventListener("popuphidden", function(e) {\
      var popup = document.getElementById(popupId);\
      if (e.target == popup) {\
        window.removeEventListener("popuphidden", arguments.callee, false);\
        return;\
      }\
      var popupNode = document.popupNode;\
      while (popupNode && popupNode != popup) popupNode = popupNode.parentNode;\
      if (popupNode == popup) popup.hidePopup();\
    }, false);\
  }'.replace("popupId", '"' + popupId + '"'));
 
  popup.setAttribute("onpopuphidden", '{\
    var popup = event.target;\
    if (popup.firstChild && popup.firstChild.localName == "toolbar") {\
      var popupToolbar = popup.firstChild;\
      popupToolbar.removeAttribute("style");\
      popupToolbar.setAttribute("collapsed", "true");\
      document.persist(popupToolbar.id, "collapsed");\
      var navbox = document.getElementById("navigator-toolbox");\
      var nextElement = navbox.firstChild;\
      while (nextElement && nextElement.localName != "toolbarset") {\
        if (Number(nextElement.getAttribute("customindex")) > Number(popupToolbar.getAttribute("customindex")))\
          break;\
        nextElement = nextElement.nextSibling;\
      }\
      navbox.insertBefore(popupToolbar, nextElement);\
      popupToolbar.firstPermanentChild = null;\
      popupToolbar.lastPermanentChild = null;\
      popupToolbar.currentSet = popupToolbar.getAttribute("currentset");\
    }\
    while (popup.lastChild && popup.lastChild.localName == "menuitem")\
      popup.removeChild(popup.lastChild);\
  }');
 
  var contextPopup = document.getElementById(contextPopupId);
  if (contextPopup) {
    contextPopup.hidePopup();
    contextPopup.parentNode.removeChild(contextPopup);
  }
 
  contextPopup = document.getElementById("mainPopupSet").appendChild(document.createElement("menupopup"));
  contextPopup.setAttribute("id", contextPopupId);
  contextPopup.setAttribute("position", "at_pointer");
  contextPopup.setAttribute("onpopupshowing", 'document.popupNode.setContextPopup(event);');
 
  var menuitem = document.createElement("menuitem");
  menuitem.setAttribute("label", "Show Context Menu With Toolbar");
  menuitem.setAttribute("type", "checkbox");
  menuitem.setAttribute("checked", this.getBoolPref('showContextWithToolbar'));
  menuitem.setAttribute("oncommand", "document.popupNode.setBoolPref('showContextWithToolbar', this.getAttribute('checked') == 'true');");
  contextPopup.appendChild(menuitem);
  contextPopup.appendChild(document.createElement("menuseparator"));
 
  this.tooltipText = this.label;
}
 
this.setBoolPref = function(name, value) {
  var prefs = Cc["@mozilla.org/preferences-service;1"].getService(Ci.nsIPrefBranch);
  prefs.setBoolPref("custombuttons.popuptoolbar." + name, value);
}
 
this.getBoolPref = function(name) {
  var prefs = Cc["@mozilla.org/preferences-service;1"].getService(Ci.nsIPrefBranch);
  return prefs.getPrefType("custombuttons.popuptoolbar." + name)
        && prefs.getBoolPref("custombuttons.popuptoolbar." + name);
}
 
this.setPopup = function(event) {
  if (this.getBoolPref('showContextWithToolbar')) {
    document.popupNode = this;
    this.setContextPopup(event);
  }
 
  var popup = event.target;
  var popupToolbar = document.getElementById(popupToolbarId);
  if (popupToolbar && popupToolbar.parentNode != popup && this.parentNode != popupToolbar) {
    popup.insertBefore(popupToolbar, popup.firstChild);
    popupToolbar.setAttribute("collapsed", "false");
    if (!this.getBoolPref('showContextWithToolbar'))
      popupToolbar.setAttribute("style", "border: none !important;");
  }
 
  if (!popup.firstChild) {
    document.popupNode = this;
    this.setContextPopup(event);
  }
}
 
this.setContextPopup = function(event) {
  var contextPopup = event.target;
  while (contextPopup.lastChild && contextPopup.lastChild.localName == "menuitem")
    contextPopup.removeChild(contextPopup.lastChild);
 
  var toolbars = document.getElementById("navigator-toolbox").getElementsByTagName("toolbar");
  for (var i=0; i<toolbars.length; i++) {
    var toolbarname = toolbars[i].getAttribute("toolbarname");
    var toolbarid = toolbars[i].getAttribute("id");
    var menuitem = contextPopup.appendChild(document.createElement("menuitem"));
    menuitem.setAttribute("label", toolbarname);
    menuitem.setAttribute("type", "radio");
    menuitem.setAttribute("name", "toolbars-radio");
    menuitem.setAttribute("checked", (this.label == toolbarname));
    menuitem.setAttribute("disabled", ("__customToolbar_" + toolbarname.replace(" ", "_") != toolbarid) || (this.parentNode == toolbars[i]));
    menuitem.setAttribute("oncommand", "document.popupNode.setToolbar(this.label.toString());");
  }
}
 
this.setToolbar = function(toolbarname) {
  var toolbar = document.getElementById("__customToolbar_" + toolbarname.replace(" ", "_"));
  if (toolbar && toolbar != this.parentNode) {
    this.label = toolbarname;
    if (toolbar.firstChild && toolbar.firstChild.image)
//      this.image = toolbar.firstChild.image;
 
    this._init();
  }
}
 
var that = this;
this.hideDropMarker = function() {
  var dropMarker = document.getAnonymousElementByAttribute(that, "class", "toolbarbutton-menu-dropmarker");
  if (dropMarker) {
    dropMarker.setAttribute("hidden", "true");
  } else {
    setTimeout(that.hideDropMarker, 10);
  }
}
 
this.showPopup = function(event) {
  document.popupNode = this;
  document.getElementById(popupId).showPopup(this, -1, -1, "popup", "bottomleft", "topleft");
}
 
this.showContextPopup = function(event) {
  document.popupNode = this;
  document.getElementById(contextPopupId).showPopup(this, event.screenX, event.screenY, "context", "none", "none");
}
 
this.leftclick = this.showPopup;
this.rightclick = this.showContextPopup;
 
if (this.type == "menu") {
  this.leftclick = this.hideDropMarker;
  this.hideDropMarker();
}
 
this._init();
 
this.setAttribute('onclick', 'if (event.target == event.currentTarget) gQuot(event, this);');


Вариант для меня просто расчудесный, но я что-то не могу толком разобраться, как она должна правильно работать. Инструкция:

1.Создать панель "__customToolbar_"
2.Разместить на созданной панели кнопки
3.Скрыть панель, установить popup-toolbar
При нажатии на кнопку popup-toolbar или при наведении курсора на неё (зависит от настройки) будет появляться всплывающая панель с кнопками
размещёнными на скрытой панели.

выполняю все шаги, создаю кнопку и выбираю свою созданную и скрытую панель. Все получается как надо:
123vl.th.jpg
После выключения/перезагрузки FF моя созданная панель становится видимой и естественно кнопка с ней уже не работает. Опять панель нужно скрыть и выбрать в настройках Popup-toolbar :(
Это так и должно быть или все таки кнопочка проглючивает?

А вот в готовых кнопках есть такая - СкрытьПоказать панель - и она умеет запоминать состояние панели.
Помогите скомбинировать коды этих двух кнопок, чтобы первая кнопка (Popup-toolbar) сразу срабатывала после перезапуска браузера!

Отсутствует

 

№319023-10-2011 18:55:58

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 3.6

Re: Custom Buttons

mserv пишет

кнопка Autocopy+3(Firefox 3.6-4) после ПКМ - настроить в контекстном меню вкладок происходит дублирование пунктов:

Я это исправил Autocopy+3(Firefox 3.6-10.02)

mserv пишет

кнопка Autocopy+3(Firefox 3.6-4) У меня не работает  autocopy.

:( У меня autocopy работает  на Firefox 10.
После чего перестало работать ?

Отредактировано bunda1 (23-10-2011 19:07:03)

Отсутствует

 

№319123-10-2011 18:59:36

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

Re: Custom Buttons

Munchauzen пишет

Я поставил все последней версии. Все равно ошибка. Вот что пишет:

Ошибка: uncaught exception: [Exception... "Node was not found"  code: "8" nsresult: "0x80530008 (NS_ERROR_DOM_NOT_FOUND_ERR)"  location: "chrome://custombuttons/content/button.js?windowId=Firefox&id=custombuttons-button48@code Line: 448"]

Скопировал в блокнот, 448 строка

this.mp.insertBefore(mi, insPoint || this.$(this.sepId));

Странный номер строки. Да еще и @code, а не @init.
Как бы там ни было, я воспроизвести не могу.
Какая последовательность действий?

Заменить

Выделить код

Код:

this.mp.insertBefore(mi, insPoint || this.$(this.sepId));

на

Выделить код

Код:

try {
            this.mp.insertBefore(mi, insPoint || this.$(this.sepId));
        }
        catch(e) {
            alert(
                "error: " + e
                + "\n"
                + "insPoint: " + insPoint + (insPoint ? " insPoint doc: " + (insPoint.ownerDocument == document) : "")
                + "\n"
                + "caller: " + arguments.callee.caller
                + (arguments.callee.caller && arguments.callee.caller.caller ? "\ncaller.caller: " + arguments.callee.caller.caller : "")
            );
        }

Что пишет при ошибке добавления закладки?


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

Отсутствует

 

№319223-10-2011 19:11:46

mserv
Участник
 
Группа: Members
Зарегистрирован: 15-11-2008
Сообщений: 1025
UA: Nightly 10.0

Re: Custom Buttons

bunda1 пишет

Я это исправил Autocopy+3(Firefox 3.6-10.02)

У меня не исправилась.  И кстати еще и по СКМ вставляет из буфера обмена сразу несколько  одинаковых фраз, их количество  такое же, как и дубликатов в контекстном меню.

Добавлено 23-10-2011 19:15:13

bunda1 пишет

sad.png У меня autocopy работает  на Firefox 10.
После чего перестало работать ?

Вот после перехода на десятку и перестала, на Авроре работает.

Отредактировано mserv (23-10-2011 19:15:13)

Отсутствует

 

№319323-10-2011 19:29:37

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 3.6

Re: Custom Buttons

mserv
Я исправленую кнопку проверил на Firefox 10 и все работает, 10 раз нажал ПКМ - настроить и все работает и ничего не дублируется. Похоже, что у тебя две одинаковые кнопки Autocopy+3(или коды) на браузере, только этим можно это объяснить. Удали кнопку и посмотри.

Отсутствует

 

№319423-10-2011 19:36:16

mserv
Участник
 
Группа: Members
Зарегистрирован: 15-11-2008
Сообщений: 1025
UA: Nightly 10.0

Re: Custom Buttons

bunda1
Кнопка была одна. Удалил её, все функции связанные с кнопкой исчезли.

Отсутствует

 

№319523-10-2011 20:03:50

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 3.6

Re: Custom Buttons

mserv
делал рестарт после то во как устанавыл исправленную Autocopy+3(Firefox 3.6-10.02) ?

Отсутствует

 

№319623-10-2011 20:59:53

mserv
Участник
 
Группа: Members
Зарегистрирован: 15-11-2008
Сообщений: 1025
UA: Nightly 10.0

Re: Custom Buttons

bunda1
Да.

Отсутствует

 

№319723-10-2011 21:12:55

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 3.6

Re: Custom Buttons

mserv
Ну тогда я не знаю, может конфликт с каким-то другим расширением,
Попробуй:
custombuttons-0.0.5.6pre2-20110827
http://custombuttons.mozdev.org/devbuilds.html

Отсутствует

 

№319823-10-2011 21:29:54

mserv
Участник
 
Группа: Members
Зарегистрирован: 15-11-2008
Сообщений: 1025
UA: Nightly 10.0

Re: Custom Buttons

bunda1 пишет

Попробуй:
custombuttons-0.0.5.6pre2-20110827
http://custombuttons.mozdev.org/devbuilds.html

Частично помогло, спасибо. Дубликаты не появляются, но autocopy по-прежнему не работает.

Отсутствует

 

№319923-10-2011 23:02:58

bunda1
Moderator
 
Группа: Moderators
Откуда: Латвия
Зарегистрирован: 09-02-2010
Сообщений: 4811
UA: Firefox 3.6

Re: Custom Buttons

Отсутствует

 

№320023-10-2011 23:52:38

mserv
Участник
 
Группа: Members
Зарегистрирован: 15-11-2008
Сообщений: 1025
UA: Nightly 10.0

Re: Custom Buttons

bunda1
То же самое

Отсутствует

 

Board footer

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