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

Хотите узнать больше о расширениях? Посмотрите ролики, рассказывающие о работе с расширениями Firefox.

№750112-02-2014 23:50:10

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

Re: Custom Buttons

bunda1
Можно вот тут

Выделить код

Код:

var image = tooltip.appendChild( document.createElement("image") );

попробовать добавить атрибут validate="never".


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

Отсутствует

 

№750213-02-2014 00:05:54

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

Re: Custom Buttons

Спасибо Infocatcher :)

Добавлено 13-02-2014 00:11:41
Кстати да, теперь код увеличивает картинки на загруженных страницах даже при выключенном интернете.

Отредактировано bunda1 (13-02-2014 00:11:41)

Отсутствует

 

№750315-02-2014 05:25:06

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

Re: Custom Buttons

Может кому нужно:

Выделить код

Код:

// Открыть всё во вкладках из папки закладок не загружая страницы в вкладках, от 15.02.2014. ................................
(function () {    
   // изменить внутреннюю функцию Firefox которая открывает всё во вкладках
   const openInTabs = PlacesUIUtils.openContainerNodeInTabs;
   eval("PlacesUIUtils.openContainerNodeInTabs = " + openInTabs.toString().replace('aView) {', 'aView){ \n  getDataAllMenuItems(aNode);  \n  if (aNode.itemId !== -1) return;'));
   addDestructor(function() { eval("PlacesUIUtils.openContainerNodeInTabs = " + openInTabs ) });

   // получить данные из всех пунктов папки закладок 
   function getDataAllMenuItems( aNode ) {
      aNode.containerOpen = true;
      
      for ( i = 0; i < aNode.childCount; ++i ) {
            var menuItem = aNode.getChild(i);
            
            if ( PlacesUtils.nodeIsURI( menuItem ) ) {
                 var url = menuItem.uri;
                 var title = menuItem.title;
                 var favicon = menuItem.icon.replace("moz-anno:favicon:", "");           

                 openTabWithoutLoading( url, title, favicon );
                 }
            }
   };   
   
   // добавить вкладку с указанными данными не загружая страницы
   function openTabWithoutLoading( url, title, favicon ) {
      var gSessionStore = Cc["@mozilla.org/browser/sessionstore;1"].getService(Ci.nsISessionStore);
      var tab = gBrowser.addTab(null);
      gSessionStore.setTabState( tab, JSON.stringify({
         entries: [ { url: url, title: title } ],
         lastAccessed: 0,
         index: 1,
         hidden: false,
         attributes: {},
         image: favicon
      }));
   };
})();

Но для папок истории не работает :/

Отредактировано bunda1 (15-02-2014 06:32:29)

Отсутствует

 

№750415-02-2014 10:39:57

voqabuhe
Участник
 
Группа: Members
Зарегистрирован: 06-12-2011
Сообщений: 3231
UA: Firefox 30.0

Re: Custom Buttons

bunda1 пишет

Может кому нужно:

Спасибо, очень полезная кнопочка, давно хотел именно такого открытия закладок из папок.

Отсутствует

 

№750515-02-2014 11:23:36

voqabuhe
Участник
 
Группа: Members
Зарегистрирован: 06-12-2011
Сообщений: 3231
UA: Firefox 30.0

Re: Custom Buttons

bunda1
Вот ещё бы было неплохо, если  бы при открытие из папок использовалось и пустая вкладка.

Отсутствует

 

№750615-02-2014 15:32:49

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

Re: Custom Buttons

voqabuhe пишет

bunda1
Вот ещё бы было неплохо, если  бы при открытие из папок использовалось и пустая вкладка.

Ты хочешь что бы код заменял уже открытую текущую пустую вкладку на первую из папки закладок. Так что ли?

:/ Да я тут подумал может добавить для кода возможность заменять уже открытые вкладки как это делает оргиналая функция. Хотя сам не пользуюсь и смысла не вижу.

Отсутствует

 

№750715-02-2014 16:11:46

voqabuhe
Участник
 
Группа: Members
Зарегистрирован: 06-12-2011
Сообщений: 3231
UA: Firefox 30.0

Re: Custom Buttons

bunda1 пишет

Ты хочешь что бы код заменял уже открытую текущую пустую вкладку на первую из папки закладок. Так что ли?

Ага.

bunda1 пишет

Да я тут подумал может добавить для кода возможность заменять уже открытые вкладки как это делает оргиналая функция. Хотя сам не пользуюсь и смысла не вижу.

Мне такое точно не надо.

Отсутствует

 

№750815-02-2014 22:07:34

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

Re: Custom Buttons

voqabuhe
Ну как то так :/

Выделить код

Код:

// Открыть всё из папки закладок в новых вкладках не загружая страниц, от 15.02.2014. ................................
(function () {
   const ss = Cc["@mozilla.org/browser/sessionstore;1"].getService(Ci.nsISessionStore);
   
   // изменить внутреннюю функцию Firefox которая открывает всё во вкладках  
   const openInTabs = PlacesUIUtils.openContainerNodeInTabs;
   eval("PlacesUIUtils.openContainerNodeInTabs = " + openInTabs.toString().replace(' {', '{\n openTabWithoutLoading(aNode);\n if (aNode.itemId !== -1) return;\n'));
   addDestructor(function() PlacesUIUtils.openContainerNodeInTabs = openInTabs );
   
   // открыть всё из папки закладок
   function openTabWithoutLoading( aNode ) {
      
      aNode.containerOpen = true;
      for ( var array = [], i = 0; i < aNode.childCount; ++i ) 
            if ( PlacesUtils.nodeIsURI(aNode.getChild(i)) ) array.push( aNode.getChild(i) );

      var blank = isBlankPageURL(content.location.href);
      if ( blank ) gBrowser.loadURI( array.shift().uri );     
      
      array.forEach(function( m ) {           
           var tab = gBrowser.addTab(null);            
           ss.setTabState( tab, JSON.stringify({
              entries: [ { url: m.uri, title: m.title } ],
              lastAccessed: 0,
              index: 1,
              hidden: false,
              attributes: {},
              image: m.icon.replace("moz-anno:favicon:", "")
            }));    
      });
   };   
})();

или так :D:

Выделить код

Код:

// Открыть всё из папки закладок в новых вкладках не загружая страниц, от 15.02.2014. ................................
(function () {
   const ss = Cc["@mozilla.org/browser/sessionstore;1"].getService(Ci.nsISessionStore);
   
   // изменить внутреннюю функцию Firefox которая открывает всё во вкладках  
   const openInTabs = PlacesUIUtils.openContainerNodeInTabs;
   eval("PlacesUIUtils.openContainerNodeInTabs = " + openInTabs.toString().replace(' {', '{\n openTabWithoutLoading(aNode);\n if (aNode.itemId !== -1) return;\n'));
   addDestructor(function() PlacesUIUtils.openContainerNodeInTabs = openInTabs );
   
   // открыть всё из папки закладок
   function openTabWithoutLoading( aNode ) {
      aNode.containerOpen = true;
      
      for ( var i = 0; i < aNode.childCount; ++i ) {
            var item = aNode.getChild(i);
            if ( !PlacesUtils.nodeIsURI( item ) ) continue;
            
            // добавить вкладку с указанными данными не загружая страницы
            var tab = gBrowser.addTab(null);            
            ss.setTabState( tab, JSON.stringify({
               entries: [ { url: item.uri, title: item.title } ],
               lastAccessed: 0,
               index: 1,
               hidden: false,
               attributes: {},
               image: item.icon.replace("moz-anno:favicon:", "")
            }));    
            }
                        
      // если текущая пустая вкладка закрыть и переключится на соседнюю вкладку 
      var blank = isBlankPageURL(content.location.href);
      if ( !blank ) return;
      gBrowser.removeCurrentTab();
      gBrowser.mTabContainer.advanceSelectedTab(1);         
   };    
})();

Добавлено 15-02-2014 22:15:57
Эх, хотел сделать кнопку которая открывает все новые вкладки не загружая но после изменения соответствующих внутренних функций Firefox консоль полна ошибок.

Отредактировано bunda1 (15-02-2014 22:15:57)

Отсутствует

 

№750915-02-2014 23:37:29

voqabuhe
Участник
 
Группа: Members
Зарегистрирован: 06-12-2011
Сообщений: 3231
UA: Firefox 30.0

Re: Custom Buttons

bunda1 пишет

Ну как то так :/

Ну да, почти как хотел.:) Спасибо. Вот ещё бы задействовать пустую вкладку, когда она не активная. Можно?

Отредактировано voqabuhe (15-02-2014 23:37:48)

Отсутствует

 

№751015-02-2014 23:40:48

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

Re: Custom Buttons

voqabuhe пишет

Ну да, почти как хотел.:) Спасибо. Вот ещё бы задействовать пустую вкладку, когда она не активная. Можно?

Как задействовать пустую вкладку, не понял.

Отсутствует

 

№751116-02-2014 00:01:22

voqabuhe
Участник
 
Группа: Members
Зарегистрирован: 06-12-2011
Сообщений: 3231
UA: Firefox 30.0

Re: Custom Buttons

bunda1 пишет

Как задействовать пустую вкладку, не понял.

bunda1 пишет

Ты хочешь что бы код заменял уже открытую текущую пустую вкладку на первую из папки закладок.

Ну вот также, только ещё и когда новая вкладка неактивная, а то сейчас она всё равно остаётся пустой.

Отсутствует

 

№751216-02-2014 00:29:22

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

Re: Custom Buttons

voqabuhe пишет

Ну вот также, только ещё и когда новая вкладка неактивная, а то сейчас она всё равно остаётся пустой.

Попробую хотя это посложнее будет :/
P.S. ты открываешь слишком много пустых вкладок, остановись!

Отсутствует

 

№751316-02-2014 00:47:43

voqabuhe
Участник
 
Группа: Members
Зарегистрирован: 06-12-2011
Сообщений: 3231
UA: Firefox 30.0

Re: Custom Buttons

bunda1 пишет

Попробую хотя это посложнее будет :/

Тогда не заморачивайся, такая ситуация нечасто возникает.

bunda1 пишет

P.S. ты открываешь слишком много пустых вкладок, остановись!

Это я их для тестирования кнопки открывал, впредь буду более воздержанным, обещаю. :)

Отсутствует

 

№751416-02-2014 00:50:06

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

Re: Custom Buttons

Ну тогда хорошо.

Отсутствует

 

№751517-02-2014 03:26:23

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

Re: Custom Buttons

Можно сделать разворачиватель комментариев на livejournal?

Отсутствует

 

№751619-02-2014 04:29:11

Alfina
Участник
 
Группа: Members
Зарегистрирован: 23-05-2010
Сообщений: 87
UA: Firefox 27.0

Re: Custom Buttons

rbfyec пишет

Можно сделать разворачиватель комментариев на livejournal?

Может быть, вас заинтересует подобный скрипт для Greasemonkey? :) LiveJournal comments autoexpand

Отсутствует

 

№751719-02-2014 12:05:06

god_05
Участник
 
Группа: Members
Зарегистрирован: 15-02-2014
Сообщений: 135
UA: Firefox 27.0

Re: Custom Buttons

Подскажите, есть ли возможность добавить/клонировать несколько кнопок "Открыть новую вкладку" в разных местах окна браузера?

Отредактировано god_05 (19-02-2014 12:09:27)

Отсутствует

 

№751819-02-2014 19:36:32

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

Re: Custom Buttons

god_05 пишет

Подскажите, есть ли возможность добавить/клонировать несколько кнопок "Открыть новую вкладку" в разных местах окна браузера?

Да сколько угодно если речь про Custom Buttons кнопку.

Отсутствует

 

№751919-02-2014 19:54:36

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

Re: Custom Buttons

Alfina пишет
rbfyec пишет

Можно сделать разворачиватель комментариев на livejournal?

Может быть, вас заинтересует подобный скрипт для Greasemonkey? :) LiveJournal comments autoexpand

Спасибо! :)
Greasemonkey у меня не установлено, поэтому я сделал из скрипта букмарклет

Выделить код

Код:

javascript:
function expCom(){
  var EXPAND_CONTAINER_SELECTORS = '.b-leaf-actions-item.b-leaf-actions-expand a, span[id^="expand_"] a, .commentText a, div.comment-menu a, div.talk-comment-box a, .comment-footer > span > a';
  var commentboxes = document.querySelectorAll(EXPAND_CONTAINER_SELECTORS);
  if (!commentboxes.length)
    return;
  for (var z = 0; z < commentboxes.length; z++) {
    if (commentboxes[z].getAttribute('onclick') && ~commentboxes[z].getAttribute('onclick').indexOf('ExpanderEx.make') || ~commentboxes[z].innerText.indexOf('Expand'))
      setTimeout(function(commentbox){ commentbox.click(); }(commentboxes[z]), 500);
  }
}
expCom()

Но теперь
1. В консоли ошибка Error: useless setTimeout call (missing quotes around argument?)
2. Раскрываются не все комментарии на странице. Впрочем, частичное нераскрытие имеет место даже если использовать скрипт с Greasemonkey, т. е. без всяких изменений.

Может тут мне помогут решить вопрос хотя бы с таймаутом?

Отсутствует

 

№752019-02-2014 20:48:26

god_05
Участник
 
Группа: Members
Зарегистрирован: 15-02-2014
Сообщений: 135
UA: Firefox 27.0

Re: Custom Buttons

bunda1 пишет

Да сколько угодно

Как её клонировать?

Отсутствует

 

№752119-02-2014 21:24:11

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

Re: Custom Buttons

Нажми ПКМ на кнопке +
iwms.jpg 
P.S. а ты уверен что речь о Custom Buttons кнопке.

Отсутствует

 

№752219-02-2014 22:58:18

Lex1
Участник
 
Группа: Members
Зарегистрирован: 07-07-2007
Сообщений: 260
UA: Firefox 27.0

Re: Custom Buttons

rbfyec пишет

помогут решить вопрос хотя бы с таймаутом?

Здесь нет таймаута, ведь функция вызывается немедленно, с переданным аргументом. Обычно используют замыкание: http://stackoverflow.com/questions/12451844/settimeout-with-arguments
Ну и innerText в фоксе вроде бы ещё не появился:)

Отсутствует

 

№752319-02-2014 23:00:19

god_05
Участник
 
Группа: Members
Зарегистрирован: 15-02-2014
Сообщений: 135
UA: Firefox 27.0

Re: Custom Buttons

bunda1 пишет

P.S. а ты уверен что речь о Custom Buttons кнопке.

Это обычная кнопка.

Отсутствует

 

№752419-02-2014 23:30:14

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

Re: Custom Buttons

god_05
Ну тогда создай Custom Buttons кнопку с кодом:

Выделить код

Код:

document.getElementById("cmd_newNavigatorTab").doCommand();

И дублируй и размещай куда хочешь.

Отсутствует

 

№752519-02-2014 23:35:34

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

Re: Custom Buttons

rbfyec пишет

Раскрываются не все комментарии на странице. Впрочем, частичное нераскрытие имеет место даже если использовать скрипт с Greasemonkey, т. е. без всяких изменений.

Вот ещё разворачиватель комментариев(и он работает, в отличии от скрипта)
Livejournal Comments Expander

Отсутствует

 

Board footer

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