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

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

№101-12-2010 20:41:28

Igor22ru
Участник
 
Группа: Members
Зарегистрирован: 30-11-2010
Сообщений: 15
UA: Opera 10.6

дополнение - при наведение копирует в буфер обмена.

Здравствуйте!

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

какие функции надо использовать?
что и как ?

p.s. спасибо.

Отсутствует

 

№202-12-2010 07:46:57

Igor22ru
Участник
 
Группа: Members
Зарегистрирован: 30-11-2010
Сообщений: 15
UA: Opera 10.6

Re: дополнение - при наведение копирует в буфер обмена.

pi.v.vitaly пишет

Надо создать сто одинаковых тем. Тогда может быть помогут!

где у меня ещё одинаковая тема? вообщем ты лучше помоги!!!

вот человек хороший подсказал. создаешь кнопку в Custom Buttons:

В раздел "Код":

Выделить код

Код:

/*CODE*/
this. checked = !this. checked;

В раздел "Инициализация":

/*Initialization Code*/
addEventListener
(
    "mouseover",
    function (event)
    {
        if ((event. target. nodeName == "A") && this. checked)
            cbu. gClipboard. write (event. target. href);
    },
    false
);

но если в исходном коде станице будет

<a href="/search/"><noindex>Карта сайта</noindex></a>

или так

<a href="/retail/" ><img border="0"  src="main-nav-retail.gif"></a>

то дополнение не будет работать.(((

так тоже не получается!

/*Initialization Code*/
var sbar = window.status;

addEventListener
(
    "mouseover",
    function (event)
    {
     if ((event. target. nodeName == "A") && this. checked)
        cbu. gClipboard. write (event. target. href + " : " + sbar );
           
    },
    false
);

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

Отредактировано Igor22ru (02-12-2010 07:56:28)

Отсутствует

 

№302-12-2010 07:57:31

Крошка Ру
Участник
 
Группа: Extensions
Зарегистрирован: 19-10-2008
Сообщений: 8718
UA: Firefox 4.0

Re: дополнение - при наведение копирует в буфер обмена.

Igor22ru Было расширение ,при наведении курсора на ссылку открывающее её в новой вкладке , а вот чтобы копировало такого не припоминаю :angel:

Отредактировано Крошка Ру (02-12-2010 07:58:11)

Отсутствует

 

№402-12-2010 08:35:57

Igor22ru
Участник
 
Группа: Members
Зарегистрирован: 30-11-2010
Сообщений: 15
UA: Opera 10.6

Re: дополнение - при наведение копирует в буфер обмена.

Крошка Ру пишет

Igor22ru Было расширение ,при наведении курсора на ссылку открывающее её в новой вкладке , а вот чтобы копировало такого не припоминаю

что то я не могу найти такого расширения? кинь линк есть есть?

Отредактировано Igor22ru (02-12-2010 08:36:12)

Отсутствует

 

№502-12-2010 09:15:29

Крошка Ру
Участник
 
Группа: Extensions
Зарегистрирован: 19-10-2008
Сообщений: 8718
UA: Firefox 4.0

Re: дополнение - при наведение копирует в буфер обмена.

Igor22ru название не помню :rolleyes: и очень возможно что на АМО  его нет :sick:

Добавлено 02-12-2010 09:21:09
.... или то было вообще не расширение а скрипт :whistle: :angel:

Отсутствует

 

№602-12-2010 19:31:54

Igor22ru
Участник
 
Группа: Members
Зарегистрирован: 30-11-2010
Сообщений: 15
UA: Opera 10.6

Re: дополнение - при наведение копирует в буфер обмена.

как сделать что бы кнопка при открытии браузера была нажатой в Custom Buttons

подскажите ещё как кнопку сделать - что бы копировал в буфер обмена строку при полной загрузки странице?

загрузилась страца - скопировал в буфет обмена !!! ???

Отсутствует

 

№703-12-2010 20:30:07

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

Re: дополнение - при наведение копирует в буфер обмена.

Igor22ru пишет

как сделать что бы кнопка при открытии браузера была нажатой в Custom Buttons

Добавить

Выделить код

Код:

this.checked = true;

в самое начала кода инициализации.

Igor22ru пишет

но если в исходном коде станице будет

Выделить код

Код:

/*Initialization Code*/
this.checked = true; // Включить при открытии окна

this.getLink = function(node) {
    if(!node || !node.localName)
        return null;

    const docNode = Node.DOCUMENT_NODE; // 9
    const eltNode = Node.ELEMENT_NODE; // 1
    for(node = node; node && node.nodeType != docNode; node = node.parentNode) {
        if(
            (
                node instanceof HTMLAnchorElement
                || node instanceof HTMLAreaElement
                || node instanceof HTMLLinkElement
            )
            && node.hasAttribute("href")
            || node.nodeType == eltNode && node.hasAttributeNS("http://www.w3.org/1999/xlink", "href")
        )
            return node;
    }
    return null;
};
this.getLinkURI = function(node) {
    const ns = "http://www.w3.org/1999/xlink";
    return node.hasAttributeNS(ns, "href")
        ? makeURLAbsolute(node.baseURI, node.getAttributeNS(ns, "href")) // See chrome://browser/content/utilityOverlay.js
        : node.href || node.getAttribute("href");
};

addEventListener(
    "mouseover",
    function(event) {
        if(!this.checked)
            return;
        var link = this.getLink(event.target);
        link && cbu.gClipboard.write(this.getLinkURI(link));
    },
    false
);

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

Отсутствует

 

№804-12-2010 18:27:40

Igor22ru
Участник
 
Группа: Members
Зарегистрирован: 30-11-2010
Сообщений: 15
UA: Opera 10.6

Re: дополнение - при наведение копирует в буфер обмена.

Infocatcher
спасибо друг) работает как надо !!!

Отсутствует

 

№905-12-2010 11:23:01

Igor22ru
Участник
 
Группа: Members
Зарегистрирован: 30-11-2010
Сообщений: 15
UA: Opera 10.6

Re: дополнение - при наведение копирует в буфер обмена.

Выделить код

Код:

this.getLink = function(node) {
    if(!node || !node.localName)
        return null;

    const docNode = Node.DOCUMENT_NODE; // 9
    const eltNode = Node.ELEMENT_NODE; // 1
    for(node = node; node && node.nodeType != docNode; node = node.parentNode) {
        if(
            (
                node instanceof HTMLAnchorElement
                || node instanceof HTMLAreaElement
                || node instanceof HTMLLinkElement
            )
            && node.hasAttribute("href")
            || node.nodeType == eltNode && node.hasAttributeNS("http://www.w3.org/1999/xlink", "href")
        )
            return node;
    }
    return null;
};
this.getLinkURI = function(node) {
    const ns = "http://www.w3.org/1999/xlink";
    return node.hasAttributeNS(ns, "href")
        ? makeURLAbsolute(node.baseURI, node.getAttributeNS(ns, "href")) // See chrome://browser/content/utilityOverlay.js
        : node.href || node.getAttribute("href");
};

addEventListener(
    "mouseover",
    function(event) {
        if(!this.checked)
            return;
        var link = this.getLink(event.target);
        link && cbu.gClipboard.write(this.getLinkURI(link));
    },
    false
);

а сложно переделать этот код для хрома? [chrome]

Отсутствует

 

№1007-01-2011 10:26:30

Igor22ru
Участник
 
Группа: Members
Зарегистрирован: 30-11-2010
Сообщений: 15
UA: Opera 11.0

Re: дополнение - при наведение копирует в буфер обмена.

ребята,
подскажите код для кнопки - копируе в  буфет обмена сообщение о том что страница загружена ?

Отсутствует

 

№1107-01-2011 20:54:05

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

Re: дополнение - при наведение копирует в буфер обмена.

Для Custom Buttons 0.0.5.1 и новее:

Выделить код

Код:

addEventListener("load", function(e) {
    var doc = e.target;
    var win = doc.defaultView;
    if(win.top != win) // Frame
        return;
    var data = "Страница загружена:\n" + doc.title + "\n" + doc.location.href;
    //LOG(data);
    cbu.gClipboard.write(data);
}, true, gBrowser);

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

Отсутствует

 

№1221-01-2011 09:20:09

Igor22ru
Участник
 
Группа: Members
Зарегистрирован: 30-11-2010
Сообщений: 15
UA: Opera 11.0

Re: дополнение - при наведение копирует в буфер обмена.

хочу по нажатию кнопки скопировать html код в буфер обмена!
делаю так

Выделить код

Код:

/*CODE*/
this.copy();
Выделить код

Код:

/*Initialization Code*/
this.copy = function(e) {
    var doc = e.target;
    var data = doc.body.innerHTML;
    cbu.gClipboard.write(data);
}

подскажите что не так?

Отредактировано Igor22ru (21-01-2011 09:20:29)

Отсутствует

 

№1321-01-2011 13:34:34

sailars
Участник
 
Группа: Members
Зарегистрирован: 11-07-2010
Сообщений: 403
UA: Firefox 4.0

Re: дополнение - при наведение копирует в буфер обмена.

Помогите и мне пожалуйста:). Есть такое расширение чтобы при выделении ссылки, копировалось в буфер обмена?


Куда ты идешь и зачем?

Отсутствует

 

№1421-01-2011 15:20:21

Black_Sun
по Отражениям
 
Группа: Members
Зарегистрирован: 09-10-2007
Сообщений: 198
UA: Firefox 4.0

Re: дополнение - при наведение копирует в буфер обмена.

Igor22ru
вот копирование содержимого тега <html></html> в буфер

Код кнопки

Выделить код

Код:

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%3EinnerHTML%20copy%3C/name%3E%0A%20%20%3Cimage%3E%3C%21%5BCDATA%5Bcustombuttons-stdicon-3%5D%5D%3E%3C/image%3E%0A%20%20%3Cmode%3E0%3C/mode%3E%0A%20%20%3Cinitcode%3E%3C%21%5BCDATA%5B/*Initialization%20Code*/%0Athis.onClick%20%3D%20function%28event%29%20%7B%0A%09if%28event.button%3C2%29%0A%09%7B%0A%20%20%20%20var%20doc%20%3D%20getBrowser%20%28%29.contentDocument%3B%0A%20%20%20%20var%20data%20%3D%20doc.getElementsByTagName%28%27html%27%29%5B0%5D.innerHTML%3B%0A%20%20%20%20cbu.gClipboard.write%28data%29%3B%0A%20%20%20%20%09%7D%0A%7D%0Athis.setAttribute%28%27onclick%27%2C%27this.onClick%28event%29%3B%27%29%3B%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

Отредактировано Black_Sun (21-01-2011 15:21:11)

Отсутствует

 

№1521-01-2011 21:35:54

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

Re: дополнение - при наведение копирует в буфер обмена.

Igor22ru пишет

подскажите что не так?

При вызове this.copy(); e будет undefined.

Выделить код

Код:

var elt = content.document.documentElement;
var str = new XMLSerializer().serializeToString(elt);
cbu.gClipboard.write(str);

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

Отсутствует

 
  • Форумы
  •  » Firefox
  •  » дополнение - при наведение копирует в буфер обмена.

Board footer

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