Refresh left tabs(Firefox 4+)
Автор: init
Описание: Кнопка позволяет в один щелчок обновить все вкладки слева от текущей. Можно обновлять произвольное количество вкладок.

Список клавиш:
Левая кнопка мыши - обновить все вкладки слева от текущей.
Средняя кнопка мыши - обновить несколько вкладок слева от текущей (ввести число в всплывающем окошке).

скрытый текст
Код кнопки:

Выделить код

Код:

custombutton://%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0D%0A%3Ccustombutton%20xmlns%3Acb%3D%22http%3A//xsms.nm.ru/custombuttons/%22%3E%0A%20%20%3Cname%3ERefresh%20left%20tabs%3C/name%3E%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bdata%3Aimage/png%3Bbase64%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%3D%3D%5D%5D%3E%3C/image%3E%0A%20%20%3Cmode%3E0%3C/mode%3E%0A%20%20%3Cinitcode%3E%3C%21%5BCDATA%5Bvar%20allTabs%20%3D%20gBrowser.mTabContainer.childNodes%3B%0Avar%20promptText%20%3D%20%22%22%3B%0Aif%28cbu.getPrefs%28%22general.useragent.locale%22%29%20%3D%3D%20%22ru%22%29%20%7B%0A%20%20promptText%20%3D%20%22%u0421%u043A%u043E%u043B%u044C%u043A%u043E%20%u0432%u043A%u043B%u0430%u0434%u043E%u043A%20%u043E%u0431%u043D%u043E%u0432%u0438%u0442%u044C%3F%22%3B%0A%7D%20else%20%7B%0A%20%20promptText%20%3D%20%22How%20many%20tabs%20should%20be%20refreshed%3F%22%3B%0A%7D%0A%0Athis.onclick%20%3D%20function%28event%29%20%7B%0A%20%20var%20tabsTotalNum%20%3D%20allTabs.length%3B%0A%20%20var%20currentTab%20%3D%20gBrowser.mCurrentTab%3B%0A%20%20var%20currentTabIndex%20%3D%20gBrowser.mTabContainer.selectedIndex%3B%0A%20%20if%28event.button%20%3D%3D%200%29%20%7B%0A%20%20%20%20for%28var%20i%3DtabsTotalNum-1%3B%20i%3E%3D0%3B%20i--%29%20%7B%0A%20%20%20%20%20%20if%28i%3CcurrentTabIndex%29%0A%20%20%20%20%20%20gBrowser.reloadTab%28allTabs%5Bi%5D%29%3B%0A%20%20%20%20%7D%0A%20%20%7D%0A%20%20if%28event.button%20%3D%3D%201%29%20%7B%0A%20%20%20%20var%20reqNum%20%3D%20parseInt%28prompt%28promptText%29%29%3B%0A%20%20%20%20if%28reqNum%29%20%7B%0A%20%20%20%20%20%20var%20stopIndex%20%3D%20currentTabIndex-reqNum%3B%0A%20%20%20%20%20%20if%28stopIndex%3C0%29%20%7B%0A%09reqNum%20%3D%20reqNum-%28-stopIndex%29%3B%0A%09stopIndex%20%3D%200%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20for%28var%20i%3D%28currentTabIndex-1%29%3B%20i%3E%3DstopIndex%3B%20i--%29%20%7B%0A%09gBrowser.reloadTab%28allTabs%5Bi%5D%29%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%20%20%7D%0A%7D%0A%5D%5D%3E%3C/initcode%3E%0A%20%20%3Ccode%3E%3C%21%5BCDATA%5B/*CODE*/%5D%5D%3E%3C/code%3E%0A%20%20%3Caccelkey%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/accelkey%3E%0A%20%20%3Chelp%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/help%3E%0A%20%20%3Cattributes/%3E%0A%3C/custombutton%3E

Код инициализации:

Выделить код

Код:

var allTabs = gBrowser.mTabContainer.childNodes;
var promptText = "";
if(cbu.getPrefs("general.useragent.locale") == "ru") {
  promptText = "Сколько вкладок обновить?";
} else {
  promptText = "How many tabs should be refreshed?";
}

this.onclick = function(event) {
  var tabsTotalNum = allTabs.length;
  var currentTab = gBrowser.mCurrentTab;
  var currentTabIndex = gBrowser.mTabContainer.selectedIndex;
  if(event.button == 0) {
    for(var i=tabsTotalNum-1; i>=0; i--) {
      if(i<currentTabIndex)
      gBrowser.reloadTab(allTabs[i]);
    }
  }
  if(event.button == 1) {
    var reqNum = parseInt(prompt(promptText));
    if(reqNum) {
      var stopIndex = currentTabIndex-reqNum;
      if(stopIndex<0) {
    reqNum = reqNum-(-stopIndex);
    stopIndex = 0;
      }
      for(var i=(currentTabIndex-1); i>=stopIndex; i--) {
    gBrowser.reloadTab(allTabs[i]);
      }
    }
  }
}


Refresh right tabs(Firefox 4+)
Автор: init
Описание: Кнопка позволяет в один щелчок обновить все вкладки справа от текущей. Можно обновлять произвольное количество вкладок.

Список клавиш:
Левая кнопка мыши - обновить все вкладки справа от текущей.
Средняя кнопка мыши - обновить несколько вкладок справа от текущей (ввести число в всплывающем окошке).

скрытый текст
Код кнопки:

Выделить код

Код:

custombutton://%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%0D%0A%3Ccustombutton%20xmlns%3Acb%3D%22http%3A//xsms.nm.ru/custombuttons/%22%3E%0A%20%20%3Cname%3ERefresh%20right%20tabs%3C/name%3E%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bdata%3Aimage/png%3Bbase64%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%3D%3D%5D%5D%3E%3C/image%3E%0A%20%20%3Cmode%3E0%3C/mode%3E%0A%20%20%3Cinitcode%3E%3C%21%5BCDATA%5Bvar%20allTabs%20%3D%20gBrowser.mTabContainer.childNodes%3B%0Avar%20promptText%20%3D%20%22%22%3B%0Aif%28cbu.getPrefs%28%22general.useragent.locale%22%29%20%3D%3D%20%22ru%22%29%20%7B%0A%20%20promptText%20%3D%20%22%u0421%u043A%u043E%u043B%u044C%u043A%u043E%20%u0432%u043A%u043B%u0430%u0434%u043E%u043A%20%u043E%u0431%u043D%u043E%u0432%u0438%u0442%u044C%3F%22%3B%0A%7D%20else%20%7B%0A%20%20promptText%20%3D%20%22How%20many%20tabs%20should%20be%20refreshed%3F%22%3B%0A%7D%0A%0Athis.onclick%20%3D%20function%28event%29%20%7B%0A%20%20var%20tabsTotalNum%20%3D%20allTabs.length%3B%0A%20%20var%20currentTab%20%3D%20gBrowser.mCurrentTab%3B%0A%20%20var%20currentTabIndex%20%3D%20gBrowser.mTabContainer.selectedIndex%3B%0A%20%20if%28event.button%20%3D%3D%200%29%20%7B%0A%20%20%20%20for%28var%20i%3DtabsTotalNum-1%3B%20i%3E%3D0%3B%20i--%29%20%7B%0A%20%20%20%20%20%20if%28i%3EcurrentTabIndex%29%0A%09gBrowser.reloadTab%28allTabs%5Bi%5D%29%3B%0A%20%20%20%20%7D%0A%20%20%7D%0A%20%20if%28event.button%20%3D%3D%201%29%20%7B%0A%20%20%20%20var%20reqNum%20%3D%20parseInt%28prompt%28promptText%29%29%3B%0A%20%20%20%20if%28reqNum%29%20%7B%0A%20%20%20%20%20%20var%20stopIndex%20%3D%20currentTabIndex%20+%20reqNum%3B%0A%20%20%20%20%20%20if%28stopIndex%3EtabsTotalNum%29%20%7B%0A%09reqNum%20%3D%20%28reqNum-%28stopIndex-tabsTotalNum%29-1%29%3B%0A%09stopIndex%20%3D%20tabsTotalNum-1%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%20%20for%28var%20i%3DcurrentTabIndex+1%3B%20i%3C%3DstopIndex%3B%20i++%29%20%7B%0A%09gBrowser.reloadTab%28allTabs%5Bi%5D%29%3B%0A%20%20%20%20%20%20%7D%0A%20%20%20%20%7D%0A%20%20%7D%0A%7D%5D%5D%3E%3C/initcode%3E%0A%20%20%3Ccode%3E%3C%21%5BCDATA%5B/*CODE*/%5D%5D%3E%3C/code%3E%0A%20%20%3Caccelkey%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/accelkey%3E%0A%20%20%3Chelp%3E%3C%21%5BCDATA%5B%5D%5D%3E%3C/help%3E%0A%20%20%3Cattributes/%3E%0A%3C/custombutton%3E

Код инициализации:

Выделить код

Код:

var allTabs = gBrowser.mTabContainer.childNodes;
var promptText = "";
if(cbu.getPrefs("general.useragent.locale") == "ru") {
  promptText = "Сколько вкладок обновить?";
} else {
  promptText = "How many tabs should be refreshed?";
}

this.onclick = function(event) {
  var tabsTotalNum = allTabs.length;
  var currentTab = gBrowser.mCurrentTab;
  var currentTabIndex = gBrowser.mTabContainer.selectedIndex;
  if(event.button == 0) {
    for(var i=tabsTotalNum-1; i>=0; i--) {
      if(i>currentTabIndex)
    gBrowser.reloadTab(allTabs[i]);
    }
  }
  if(event.button == 1) {
    var reqNum = parseInt(prompt(promptText));
    if(reqNum) {
      var stopIndex = currentTabIndex + reqNum;
      if(stopIndex>tabsTotalNum) {
    reqNum = (reqNum-(stopIndex-tabsTotalNum)-1);
    stopIndex = tabsTotalNum-1;
      }
      for(var i=currentTabIndex+1; i<=stopIndex; i++) {
    gBrowser.reloadTab(allTabs[i]);
      }
    }
  }
}

...

на самом деле...
может быть автор найдёт время сделать кнопки для обновления вкладок слева/справа, но только в пределах текущей группы?