Плагин для Firefox с красивым интерфейсом и выбором фона по ссылке
Плагин для Firefox с красивым интерфейсом и выбором фона по ссылке
Этот плагин для Firefox позволяет установить фоновое изображение или видео по ссылке. Он обладает красивым интерфейсом и поддерживает два языка: русский и английский.
Основные возможности:
- Выбор фонового изображения по ссылке.
- Выбор фонового видео по ссылке.
- Кнопки 'Применить' и 'Отключить'.
- Меню для выбора языка (русский или английский).
Код плагина:
// Создаем объект плагина
var myPlugin = {
// Инициализация плагина
init: function() {
// Создаем окно плагина
myPlugin.createWindow();
// Добавляем кнопки на панель инструментов браузера
myPlugin.addToolbarButtons();
// Обработчик изменения языка
var langSelect = document.getElementById('lang-select');
langSelect.addEventListener('change', function() {
myPlugin.setLanguage(langSelect.value);
});
},
// Создание окна плагина
createWindow: function() {
// Создаем div для окна плагина
var pluginDiv = document.createElement('div');
pluginDiv.id = 'my-plugin';
pluginDiv.style.display = 'none';
// Создаем заголовок окна плагина
var titleBar = document.createElement('div');
titleBar.className = 'title-bar';
titleBar.innerHTML = '<span>My Plugin</span>';
// Создаем контент окна плагина
var content = document.createElement('div');
content.className = 'content';
content.innerHTML = '<label for='bg-url'>Background URL:</label><input type='text' id='bg-url'><br><button id='apply-btn'>Apply</button> <button id='disable-btn'>Disable</button>';
// Создаем меню выбора языка
var langSelect = document.createElement('select');
langSelect.id = 'lang-select';
langSelect.innerHTML = '<option value='en'>English</option><option value='ru'>Русский</option>';
// Добавляем элементы в окно плагина
pluginDiv.appendChild(titleBar);
pluginDiv.appendChild(content);
pluginDiv.appendChild(langSelect);
// Добавляем окно плагина в DOM
document.body.appendChild(pluginDiv);
},
// Добавление кнопок на панель инструментов браузера
addToolbarButtons: function() {
// Создаем кнопку для открытия окна плагина
var pluginBtn = document.createElement('button');
pluginBtn.className = 'toolbar-btn';
pluginBtn.innerHTML = '<img src='icon.png'>';
// Обработчик клика по кнопке плагина
pluginBtn.addEventListener('click', function() {
var pluginDiv = document.getElementById('my-plugin');
if (pluginDiv.style.display === 'none') {
pluginDiv.style.display = 'block';
} else {
pluginDiv.style.display = 'none';
}
});
// Добавляем кнопку на панель инструментов браузера
var navBar = document.getElementById('nav-bar');
navBar.appendChild(pluginBtn);
},
// Установка выбранного языка
setLanguage: function(lang) {
var langData = myPlugin.languageData[lang];
// Устанавливаем тексты для элементов плагина
document.querySelector('#my-plugin .title-bar span').textContent = langData.title;
document.querySelector('#my-plugin label[for='bg-url']').textContent = langData.bgUrlLabel;
document.querySelector('#my-plugin #apply-btn').textContent = langData.applyBtn;
document.querySelector('#my-plugin #disable-btn').textContent = langData.disableBtn;
},
// Данные для локализации
languageData: {
'en': {
'title': 'My Plugin',
'bgUrlLabel': 'Background URL:',
'applyBtn': 'Apply',
'disableBtn': 'Disable'
},
'ru': {
'title': 'Мой Плагин',
'bgUrlLabel': 'URL фона:',
'applyBtn': 'Применить',
'disableBtn': 'Отключить'
}
}
};
// Инициализируем плагин
myPlugin.init();
Установка:
- Сохраните код в файл
manifest.json. - Создайте папку с именем
dataи поместите в нее файлicon.png. - Откройте
about:debuggingв Firefox и нажмите 'Load Temporary Add-on'. - Выберите папку, в которой находятся файлы плагина.
- Плагин будет установлен и появится на панели инструментов браузера.
Использование:
- Нажмите на кнопку плагина на панели инструментов, чтобы открыть окно плагина.
- Введите URL изображения или видео в поле 'Background URL'.
- Нажмите 'Apply', чтобы применить изменения.
- Нажмите 'Disable', чтобы отключить фоновое изображение или видео.
- Используйте меню для выбора языка (русский или английский).
原文地址: https://www.cveoy.top/t/topic/njuu 著作权归作者所有。请勿转载和采集!