Почему при сохранении переменной input в файл внешний вид поля ввода меняется (изменяется высота) ? (сайт www.ya.ru)
приблизительно посчитал
сделай
var height = '0px'; var element = document.getElementByTagName('INPUT'); for (var i=0;i<element.length;i++) { if (element[i].type == 'text') { height = element.ownerDocument.defaultView.getComputedStyle(element[i], null).getPropertyValue('height'); break; } } var input = '<input type="text" style="height:"' + height +'>';
input сохранить в test.html
Получится:
сравни с дефолтным значением визуально!
…размер поумолчанию когда не выставляешь height
Вроде можно ещё так
а если так попробовать !
aaa.js function WinisRun(win) { // win - указатель на окно } bbb.xul <script type="application/x-javascript" src="chrome://.../content/aaa.js"/> <window id="qsWaiterWindow" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" onload="WinisRun(this)">
Eщё один вопрос по стилям !
Я делаю на сайте www.ya.ru :
var element = document.getElementByTagName('INPUT'); for (var i=0;i<element.length;i++) { if (element[i].type == 'text') { var height = element.ownerDocument.defaultView.getComputedStyle(element[i], null).getPropertyValue('height'); break; } }
почему height == 16px вместо положенных 22px ?
Спасибо за помощь !
При сохранении слова 'Почта' получаю в файле >GB0 (US>GB0)
function SaveToFile(path, fileName, string) { var aFolder = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile); var aFile = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile); if (aFile) { aFolder.initWithPath(path); if (aFolder.exists() == false) { aFolder.create(Components.interfaces.nsIFile.DIRECTORY_TYPE, 0644); } aFile.initWithPath(path + fileName); if (aFile.exists() == false) { aFile.create(Components.interfaces.nsIFile.NORMAL_FILE_TYPE, 0644); } var outputStream = Components.classes["@mozilla.org/network/file-output-stream;1"].createInstance(Components.interfaces.nsIFileOutputStream); outputStream.init(aFile, 0x02 | 0x08 | 0x20, 0664, 0); outputStream.write(string, string.length); outputStream.flush(); outputStream.close(); } }
Решил проблемму !
var element = document.getElementByTagName('FORM'); var color = element.ownerDocument.defaultView.getComputedStyle(element, null).getPropertyValue('background-color');
Как можно получить 'background-color' формы f1 обьявленный в стиле?
<html> <head> <style type="text/css" media="screen"> .csstest {background-color:#AAFFAA;} </style> </head> <body> <form name="f1" class="csstest"> Form3 </form> </body> </html>
пробовал так:
var element = document.getElementByTagName('FORM'); var color = document.defaultView.getComputedStyle(element, null).getPropertyValue('background-color');
color == 'transparent'
и так
var element = document.getElementByTagName('FORM'); var color = elemenе.style.backgroundColor;
color == ''
…посмотри document.location.href
перебирай все элементы документа и подсчитывай их сам
for (var i=0;i<document.childNodes.length;i++) { alert(document.childNodes[i].nodeName); }
c.browsers.length // число закладок
window.getBrowser().mCurrentTab // выбранный таб
var c = document.getElementById ("content"); for (var i=0;i<c.browsers.length;i++) { if (c.browsers[i] == window.getBrowser().getBrowserForTab(window.getBrowser().mCurrentTab)) { } }
Спасибо!
Работает ечли убрать остальные обработчики.
Если в OnDocument добавить alert ("tab index: " + event. currentTarget. mTab. tabIndex);
то Ошибка: event.currentTarget.mTab has no properties
Источник: chrome://get_html_info/content/get_html_info.js
Строка: 64
В том что event. currentTarget это документ (Frame не имеет родителей).
и к какому c.browsers[i] он относится.
еслиб alert (event. currentTarget. nodeName) выдавал "browser" ==>
var c = document.getElementById ("content"); for (var i=0;i<c.browsers.length;i++) { if (c.browsers[i] == event. currentTarget. nodeName) { // где i номер таба } }
для такого
window. getBrowser (). addEventListener ("DOMNodeInserted", dnins, true); document.addEventListener("DOMNodeRemoved", OnTabRemoved, true); function dnins (event) { alert(event. currentTarget.nodeName); }
1-й : tabbrowser
2-й : Ошибка: this.getBrowserAtIndex(i) has no properties
Источник: chrome://global/content/bindings/tabbrowser.xml
Строка: 201
для такого варианта
document.addEventListener("DOMContentLoaded", Docc1, true); function Docc1(event) { alert(event. currentTarget.nodeName); // == #document }
Я говорил, что у меня ругается на mTab
Неужеле перебор единственный вареант !?
а из-за тулбара такой глюк может быть ?
отключил ShowIP и Hello Word
таже ошибка
<method name="getBrowserIndexForDocument"> <parameter name="aDocument"/> <body> <![CDATA[ for (var i = 0; i < this.mPanelContainer.childNodes.length; i++) { if (this.getBrowserAtIndex(i).contentDocument == aDocument) { return i; } } return -1; ]]> </body> </method>
может ещё за экстеншинов.
у меня стоят:
Dom Inspector
TalkBack
ShowIP
Hello Word
и мой
Вот функция:
function dnins (event) { alert('In'); // alert(event. target.nodeName); alert(event. originalTarget.nodeName); var t = event. originalTarget; // if ((t. nodeName == "vbox") || (t. nodeName == "xul:vbox")) if ((t. nodeName == "tab") || (t. nodeName == "xul:vbox")) { alert('Add'); // äîáàâëåíà íîâàÿ âêëàäêà // ïðèêðåïëÿåì ýëåìåíòó browser âêëàäêè // îáðàáîò÷èê DOMContentLoaded // var b = t. getElementsByTagName ("browser") [0]; // t. addEventListener ("DOMContentLoaded", OnDocument, true); } }
на втором ивенте (в точке alert(event. originalTarget.nodeName);) выдается ошибка
Может как-нить с броузером связано у меня FF 1.5.0.2
Попробуй
var Elem = document.getElementById('Descript'); if (Elem) { alert('Is Elem'); Elem.value = DescrText; }
У тебя скорее всего элемент ещё несуществует
Нагнал немного
Приходит (2 ивента):
1- tab
2- Ошибка: this.getBrowserAtIndex(i) has no properties
Источник: chrome://global/content/bindings/tabbrowser.xml
Строка: 201