Создание пользовательской кнопки в Firefox (используя аддон пользовательских кнопок) не позволяет мне изменить размер изображения кнопки - PullRequest
2 голосов
/ 13 июля 2011

Я успешно создал свою собственную кнопку в Firefox, и она делает то, что мне нужно. Затем я поместил на него пользовательский значок с помощью приведенного ниже кода (который работает так, как я хотел), единственная проблема с ним заключается в том, что мое исходное изображение может быть больше или меньше того размера, который я на самом деле хочу (чтобы он соответствовал другому). значки на панели инструментов). Поэтому я хочу как-то изменить размер изображения в приведенном ниже коде до жестко заданного размера и, возможно, до размера значков других кнопок.

Я много гуглил и не мог найти никакого рабочего решения, кроме изменения размера изображения в редакторе изображений и использования этой версии с измененным размером. Весь мой закомментированный код, приведенный ниже, - это лишь некоторые из вещей, которые я пытался изменить размер изображения. Никто не работал.

Еще одна вещь, которая меня интересует, - где я могу найти хорошую документацию о том, какие функции и свойства доступны для меня для создания пользовательских кнопок. Я попробовал веб-сайт с пользовательскими кнопками, и он кажется довольно скудным по документации. То есть. Я просто догадываюсь на данный момент, потому что Google не нашел больше хороших примеров, которые я еще не пробовал.

var profilePath="file:\\" + Components.classes["@mozilla.org/file/directory_service;1"].getService( Components.interfaces.nsIProperties).get("ProfD", Components.interfaces.nsIFile).path
var myImageDirRelativePath="/testicons/"

var myImage="Next.ico"

this.image=profilePath + myImageDirRelativePath + myImage

//this.style.width=500
//this.style.height=500

//this.width=50
//this.height=40

//this.image.height=5
//this.image.width=5

//this.region=new rect(0px, 24px, 24px, 0px)

Я также попытался установить следующее свойство:

.custombutton                  
  {-moz-image-region: rect( 0px 24px 24px  0px);}

который не работал.

1 Ответ

4 голосов
/ 25 октября 2012

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

​var img = document.createElement('img');​
img.src = "image.png";
img.height = 200;
img.width = 200;
$('targetwrapper').append(img);
...