Помогите с расширением для FireFox
Есть такой main.js:
var buttons = require('sdk/ui/button/action'); var tabs = require("sdk/tabs"); var data = require("sdk/self").data; var pageMod = require("sdk/page-mod"); var text_entry = require("sdk/panel").Panel({ contentURL: data.url("popup.html") }); var button = buttons.ActionButton({ id: "mozilla-link", label: "Visit Mozilla", icon: { "16": "./icon-16.png", "32": "./icon-32.png", "64": "./icon-64.png" }, onClick: handleClick }); function handleClick(state) { text_entry.show(); } exports.main = function() { pageMod.PageMod({ include: "*", contentScriptWhen: 'end', contentScriptFile: [data.url("jquery-1.12.0-min.js") , data.url("my-script.js")] }); }; Подключаю jquery-1.12.0-min.js и my-script.js Как мне из my-script.js запустить функцию handleClick и передать в неее параметры. В общем надо управлять этой функцией из my-script.js, либо зделать аналог handleClick в my-script.js. Спасибо. |
BorisBritva,
В эту функцию не надо передавать параметров. Параметр в заголовке не используется, а в теле функции используется глобальная переменная |
Цитата:
мне нужно со страницы сайта получить значение атрибутов у элемента - a (ссылки) и передать их в text_entry ( numbers: [1, 2] - contentScriptOptions ) по клику на ссылку юзером на странице. var text_entry = require("sdk/panel").Panel({ contentURL: data.url("popup.html"), contentScriptFile: [data.url("jquery-1.12.0-min.js") , data.url("popup.js")], contentScriptOptions: { showOptions: true, numbers: [1, 2] } }); и работа со страницей: exports.main = function() { pageMod.PageMod({ include: "*", contentScriptWhen: 'end', contentScriptFile: [data.url("jquery-1.12.0-min.js") , data.url("my-script.js")] }); |
Цитата:
выводит - _errorType = ReferenceError - message = text_entry is not defined |
BorisBritva,
ИЗВИНЯЮСЬ за наглость так как ответ не по теме(((((( помогите http://javascript.ru/forum/css-html-...mat-knopu.html |
BorisBritva,
Что-то я не пойму, где у вас находится объявление text_entry. В main.js или где-то еще? |
Цитата:
Да в main.js )) |
BorisBritva,
Если вы подключаете main.js, то text_entry определится как глобальная переменная (с тем описанием, которое в main.js) var text_entry = require("sdk/panel").Panel({ contentURL: data.url("popup.html") }); А где у вас находится это описание? var text_entry = require("sdk/panel").Panel({ contentURL: data.url("popup.html"), contentScriptFile: [data.url("jquery-1.12.0-min.js") , data.url("popup.js")], contentScriptOptions: { showOptions: true, numbers: [1, 2] } }); Которое из них вам нужно? |
Цитата:
я его уже допилил)) и мне в numbers: надо установить значения атрибутов ссылки, которую юзер нажал на странице. |
вот весь main.js:
var buttons = require('sdk/ui/button/action'); var tabs = require("sdk/tabs"); var data = require("sdk/self").data; var pageMod = require("sdk/page-mod"); var text_entry = require("sdk/panel").Panel({ include: "*", contentURL: data.url("popup.html"), contentScriptFile: [data.url("jquery-1.12.0-min.js") , data.url("popup.js")], contentScriptOptions: { showOptions: true, numbers: [1, 2] } }); var button = buttons.ActionButton({ id: "mozilla-link", label: "Visit Mozilla", icon: { "16": "./icon-16.png", "32": "./icon-32.png", "64": "./icon-64.png" }, onClick: handleClick }); function handleClick(state) { text_entry.show(); } exports.main = function() { pageMod.PageMod({ include: "*", contentScriptWhen: 'end', // end start contentScriptFile: [data.url("jquery-1.12.0-min.js") , data.url("my-script.js")] }); }; |
Часовой пояс GMT +3, время: 03:24. |