Страницы: 1
Добрый вечер!
У меня еще два вопроса. Возможно ли вывести окно перед загрузкой окна main-window (файл browser.xul)?
Либо как мне вывести окно моего расширения сразу при загрузке броузера
пробовал так
<?xml version="1.0"?> <overlay id="checklicenseOverlay" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"> <window id="main-window"> <script type="application/x-javascript" src="chrome://foo/content/foo.js" /> </window> </overlay>
файл foo.js
window.addEventListener ("load", checkAndSave, true); function checkAndSave() { if(document.getElementById("content")) { window.open("chrome://foo/content/dialogWindow.xul","dialogWindow","width=200,height=90,modal,centerscreen,ch rome,resizable=yes"); } }
Так окно появляется 4 раза .
Также имею трудности с записью в файл.
Пишу в файл следующим образом
function writeFile(aData) { netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect"); var file = Components.classes["@mozilla.org/file/directory_service;1"].getService(Components.interfaces.nsIProperties).g et("ProfD", Components.interfaces.nsIFile); file.append("tmp.dat"); var foStream = Components.classes['@mozilla.org/network/file-output-stream;1'].createInstance(Components.interfaces.nsIFileO utputStream); foStream.init(file, 0x02, 0664, 0); foStream.write(aData, aData.length); foStream.close(); return false; }
Проблема в том, что каждый раз при записи в файл мне надо что-бы старые данные удалялись, а у меня получается
они просто затираются хотя файл у меня открыт на запись
т.е. если при первом вызове aData="qwerty";
при втором aData="123", то в файле у меня остается 123rty, но я хочу получить 123.
Посоветуйте к мне с этим бороться.
Спасибо
Отсутствует
...остается 123rty, но я хочу получить 123...
Надо добавить флаг PR_TRUNCATE:
см. здесь: http://kb.mozillazine.org/Dev_:_Extensi … _:_File_IO
Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!
Отсутствует
...мне вывести окно моего расширения сразу при загрузке броузера
пробовал так...Так окно появляется 4 раза...
"Подсмотрел" в Xpoint Sidebar (http://xpoint.ru/sidebar/).
window. addEventListener ("load", checkAndSave, true); function checkAndSave() { var appShell = Components. classes ["@mozilla.org/appshell/appShellService;1"]. getService (Components. interfaces. nsIAppShellService); var hiddenWnd = appShell. hiddenDOMWindow; if (typeof (hiddenWnd. firstStartFlag) == 'undefined') { hiddenWnd. firstStartFlag = true; window. open ("chrome://foo/content/dialogWindow.xul", "dialogWindow", "width=200,height=90,modal,centerscreen,chrome,resizable=yes"); } }
Только надо придумать оригинальное название для firstStartFlag, т. к. в скрытом окне могут хранить данные и другие расширения.
Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!
Отсутствует
Страницы: 1