Kamui
Ну да, сначала нужно заполучить ссылку на этот select. Это уже от страницы зависит.
Если остальные параметры тоже именованные, то для <select name="selectName"> внутри этой формы:
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
все таки хочется что бы коды работали с использованием полученных:
id = context-viewpartialsource-selection
oncommand = gContextMenu.viewPartialSource('selection');
var sourceNode = DragIt.dndParams.Source; if(typeof sourceNode == "string") { var sel = document.commandDispatcher.focusedWindow.getSelection(); sourceNode = sel.rangeCount && sel.getRangeAt(0).endContainer || null; } document.popupNode = sourceNode; var cm = document.getElementById("contentAreaContextMenu"); cm.collapsed = true; cm.openPopup(); document.getElementById("context-viewpartialsource-selection").click(); cm.hidePopup(); cm.collapsed = false;
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
Infocatcher
работает!
спасибо.
но
заменил на context-google-search
и картинки не ищет (
var sourceNode = DragIt.dndParams.Source; if(typeof sourceNode == "string") { var sel = document.commandDispatcher.focusedWindow.getSelection(); sourceNode = sel.rangeCount && sel.getRangeAt(0).endContainer || null; } document.popupNode = sourceNode; var cm = document.getElementById("contentAreaContextMenu"); cm.collapsed = true; cm.openPopup(); document.getElementById("context-google-search").click(); cm.hidePopup(); cm.collapsed = false;
Добавлено 31-01-2013 16:56:32
хочется иметь готовый шаблон в котором просто менять айди.
Отредактировано firepox (31-01-2013 16:56:32)
Отсутствует
но
заменил на context-google-search
и картинки не ищет (
Что за расширение?
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
сработало
но
если сделать правый клик и уже потом сделать жест!
Добавлено 31-01-2013 17:00:46
Что за расширение?
Отредактировано firepox (31-01-2013 17:00:46)
Отсутствует
В общем, пусть автор DragIt вот это исправит:
Что-то у меня typeof DragIt.dndParams.Source алертится как string.
А ещё в функции DragIt.DNDParams есть строка source = decodeURIComponent (aSource);
Странно это всё...
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
Что-то у меня typeof DragIt.dndParams.Source алертится как string.
А ещё в функции DragIt.DNDParams есть строка source = decodeURIComponent (aSource);
как это по английски выразить? что бы он понял о чем речь
отправлю
Отсутствует
Я уже написал:
http://forums.mozillazine.org/viewtopic … #p12637877
Если не поймет, призовем знатоков английского.
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
Если остальные параметры тоже именованные, то для <select name="selectName"> внутри этой формы:
Эх не могу все равно разобраться, там форма такая - <select name="prefix"...
Внутри этой формы Select, есть элементы OPTION, которые и нужно выбрать. Если проще будет разобраться, то вот ссылка
Отсутствует
пользовался FireGestures
но DragIt - гораздо круче
Очень уж хочется, легко и просто созовать свои жесты.
Добавлено 31-01-2013 17:21:44
Я уже написал:
Огромное спасибо за помощь!
С нетерпением буду ждать, когда появится хак для DragIt (ну или типа того)
Отредактировано firepox (31-01-2013 17:21:44)
Отсутствует
Infocatcher
Если Вас не затруднит,
DragIt не открывает картинки.
проверьте пожалуйста, может еще какой баг в аддоне...)
спасибо
Отсутствует
firepox
Да, наверное, баг.
У меня при перетаскивании логотипа с главной Яндекса вот так запустило:
"C:\Program Files\XnView\xnview.exe" http://www.yandex.ru/
На что XnView выдает
Warning
---------------------------
Ошибка при открытие файла <C:\Program Files\Mozilla Firefox\http://www.yandex.ru/>
---------------------------
ОК
(там еще текущая директория – C:\Program Files\Mozilla Firefox\, но это ограничение API Firefox, вроде как)
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
Да, наверное, баг.
Если Вас не затруднит, сообщите и об этом автору, пожалуйста.
Добавлено 31-01-2013 19:00:40
Infocatcher
Отредактировано firepox (31-01-2013 19:01:18)
Отсутствует
вот ссылка
Вариант
Отсутствует
Dumby
// Настройка функций кликов мыши для кнопки ................................................................ this.onclick = function(e) { // действие при клике ПКМ .... if ( e.button == 2 && !e.ctrlKey && !e.shiftKey && !e.altKey && !e.metaKey ) { e.preventDefault(); menuPopup.showPopup(this, -1, -1, "popup", "bottomleft", "topleft"); } }; // Создать меню с настройками для кнопки .................................................................... var mainPopupSet = document.getElementById("mainPopupSet"); var menuPopup = mainPopupSet.appendChild(document.createElement("menupopup")); // массив с данными для создание пунктов меню .... this.array = [ { label: 'Автоматически закрыть', value: 'FindBar.auto_Close', cek:''}, { label: 'Закрыть через: |7| секунд', value: 'FindBar.CloseTimer', change:''}, { separator: '' }, { label: 'FindBar мини', value: 'FindBar.mini', func: 'toggleAttribute', cek:''}, { label: 'FindBar сверху', value: 'FindBar.top', func: 'toggleAttribute', cek:''}, { label: 'FindBar справа', value: 'FindBar.right', func: 'toggleAttribute', cek:''}, { label: 'Кнопка "Вставить и искать" на FindBar', value: 'FindBar.pasteButton', func: 'toggleAttribute', cek:''}, { separator: '' }, { label: 'Find в контекстном меню', value: 'FindBar.contextFindWords', cek:''}, { label: 'Всегда открывать пустую поисковую форму', value: 'FindBar.autoclear', func: 'autoClear', cek:''}, { label: 'Переключать FindBar двойным средним кликом на странице', value: 'FindBar.ToggleWithDoubleMiddleClick', cek:''}, { label: 'Переключать aвтовыделение двойным кликом на поисковой форме', value: 'FindBar.Autohighlight.ToggleWithDoubleClick', cek:''}, { separator: '' }, { label: 'Автовыделение', value: 'FindBar.Highlight', func: 'toggleAttribute', cek:''}, { label: 'Автовыделение в ссылках', value: 'FindBar.Highlight.Link', func: 'autoClear', cek:''}, { label: 'Добавить текст для автовыделение', func: 'toggleHighlightValue()'}, { label: 'Сбросить текст для автовыделение', func: 'toggleHighlightValue()'}, { label: 'Изменить цвет: |#ef0fff| для автовыделение', value: 'ui.textHighlightBackground', change:''} ]; // цикл добавляет из массива атрибуты и обработчики пунктам меню .... this.array.forEach(function( m ) { if ( "separator" in m ) { menuPopup.appendChild( document.createElement("menuseparator") ); return }; if ( "value" in m ) var p = custombuttons.getPrefs( m.value ) var mItem = document.createElement("menuitem"), array = m.label.split("|"); mItem.setAttribute("label", !array[1]? m.label : ( array[0] + p + array[2] ) ); if ( "cek" in m ) { mItem.setAttribute('type', 'checkbox'); mItem.setAttribute('checked', custombuttons.getPrefs( m.value ) ); mItem.setAttribute('onclick', 'custombuttons.setPrefs("' + m.value + '", !custombuttons.getPrefs("' + m.value + '"))'); } if ( "change" in m ) { mItem.addEventListener("command", function(e) { var val = custombuttons.promptBox( this.label, 'Отмена сохранит значение по умолчанию'); var pref = val[0]? val[1]: array[1]; custombuttons.setPrefs( m.value, pref ); this.label = array[0] + pref + array[2]; }, false); }; if ( "func" in m ) mItem.addEventListener("command", function(e) { m.func + '(' + m.value + ')' }, false); menuPopup.appendChild(mItem); }); // добавляем стандартное контекстное меню .... var separator = document.createElement("menuseparator"); menuPopup.appendChild( separator ); var cbContextPopup = document.getElementById("custombuttons-contextpopup"); var clone = cbContextPopup.cloneNode(true); clone.setAttribute("onpopupshowing", "document.popupNode = document.getElementById('" + this.id + "')"); var menu = document.createElement("menu"); menu.setAttribute( "label", "Меню кнопки" ); menu.appendChild( clone ); menuPopup.appendChild( menu ); function toggleAttribute( s ) { alert( s ) };
if ( "func" in m ) mItem.addEventListener("command", function(e) { m.func + '(' + m.value + ')' }, false);
и
Так вот запускается:
if ( "func" in m ) mItem.addEventListener("command", function(e) { toggleAttribute('FindBar мини') }, false);
Но мне нужно что бы название функции и аргумент передавался в обработчик из массива с данными для создание пунктов меню
Отредактировано bunda1 (31-01-2013 19:56:02)
Отсутствует
все отключил, но файл не загружается на яндекс.диск
У меня на Яндекс.Диск перетащилось.
Но не работает другое – не перетащить локальную картинку на текущую (пустую) вкладку.
И пора бы уже перемещаться в тему расширения.
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
как это можно исправить
Вроде, если просто заменить в файле
dragit_formerly_drag_de_go-3.0.1-fx.xpi\chrome\content\dnd\DNDParams.js
на
, то работает вот этот код (во всяком случае, для "context-viewpartialsource-selection" и "context-viewimageinfo").
Отредактировано Infocatcher (31-01-2013 20:31:01)
Прошлое – это локомотив, который тянет за собой будущее. Бывает, что это прошлое вдобавок чужое. Ты едешь спиной вперед и видишь только то, что уже исчезло. А чтобы сойти с поезда, нужен билет. Ты держишь его в руках. Но кому ты его предъявишь?
Виктор Пелевин. Желтая стрела
Отсутствует
узнаю айди (кучу проверил) - заменяю в хаке - все работает!!!
спасибо!
зы
может и с открытием в приложении разберетесь? ))
Добавлено 31-01-2013 21:02:05
все супер!
узнал айди нужной кнопки.
вставил в хак.
то работает вот этот код
работает!
зы
можно повесить на любой жест, любую кнопку!
я в восторге!
Отредактировано firepox (01-02-2013 18:07:29)
Отсутствует
bunda1
if ( "func" in m ) mItem.addEventListener("command", function(e) { eval(m.func + '("' + m.value + '")') }, false);
А ещё можно попробовать в свойствах func: в качестве значения указать ссылку на саму функцию, например
и тогда
if ( "func" in m ) mItem.addEventListener("command", function(e) { m.func(m.value) }, false);
Отсутствует
bunda1
Может что-то сделаешь с кнопкой Translate? Помнишь, у нее меню не появляется, пока не нажмешь ее редактировать, а потом OK?
После этой операции, консоль пишет:
Метка времени: 02.02.2013 1:13:31 Предупреждение: ReferenceError: reference to undefined property x.ss[i].cmd Источник: chrome://custombuttons-context/content/button.js?windowId=Firefox&id=custombuttons-button12@init Строка: 142
И еще, при использовании переводчика MS и перевода в новой вкладке, открывается новая вкладка со страницей которую мы хотим перевести, но фокус переключается на вкладку справа, т.е. примерно так:
__ __
имеем: |
| | c |
п - вкладка которую хотим перевести, она в фокусе;
с - соседняя вкладка.
при нажатии получается:
__ __ __
имеем: | п | | к | |
|
к - клонированная вкладка для перевода. И переводится как раз соседняя вкладка, а не та которая была склонирована для перевода.
Как-то так
Отсутствует