Здравствуйте, ЖуК, Вы писали:
A>>А почему часть методов имеет названия в Pascal case, а часть — в Camel case? ЖуК>Эээммм... да. Согласен, некоторые вещи немного вводят в заблуждение. Вообще, изначально принцип задумывался такой: ЖуК>lowerCamelCase — для методов и свойств ЖуК>UpperCamelCase — для имен классов и метода Class (который собственно и используется для объявления классов) ЖуК>Как считаете — насколько критично вносить исправления? Стоит ли?
Во-первых, единообразие названий должно быть. Во-вторых, в JavaScript принято для свойств объекта использовать lowerCamelCase (если не считать решения от Microsoft). Лучше поправить.
Свойства идентификации браузеров можно переименовать, добавив перфикс "is". Это решит проблему с IE. Либо ввести одно строковое свойство browser, которое бужет принимать то или иное значение. Либо сделать это свойство числовым и добавить несколько "константных" свойств типа BROWSER_MSIE, и сравнивать так: Ajax.browser == Ajax.BROWSER_FIREFOX.
Свойство Version лучше записать в верхнем регистре, это будет символизировать его "константность".
ЖуК wrote:
> имен-браузеров видим UpperCamelCase, так у меня получилось из-за IE и > потом пошло-поехало, также как исключение получились свойства
Просто можно применить такое правило — кейс для аббревиатур точно такой же как и для слов. Т.е. класс будет называться class Ie, а фция ie(). Это позволяет красиво записывать подряд идущие аббревиатуры, типа class XmlDomDao, xmlDomDao() вместо class XMLDOMDAO, xMLDOMDAO(??).
Posted via RSDN NNTP Server 2.1 beta
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
Здравствуйте, anonymous, Вы писали:
A>Свойства идентификации браузеров можно переименовать, добавив перфикс "is". Это решит проблему с IE. Либо ввести одно строковое свойство browser, которое бужет принимать то или иное значение. Либо сделать это свойство числовым и добавить несколько "константных" свойств типа BROWSER_MSIE, и сравнивать так: Ajax.browser == Ajax.BROWSER_FIREFOX.
Переделал первім способом — через is. Второй действительно очень хорош, но именно для данной задачи очень громоздкий как с точки зрения реализации так и с точки зрения использования.
ЖуК wrote:
> Переделал первім способом — через is. Второй действительно очень хорош, > но именно для данной задачи очень громоздкий как с точки зрения > реализации так и с точки зрения использования.
стырь отсюда: http://docs.jquery.com/Utilities/jQuery.browser
Posted via RSDN NNTP Server 2.1 beta
но это не зря, хотя, может быть, невзначай
гÅрмония мира не знает границ — сейчас мы будем пить чай
var $ = function( id) {
// Если получили в качестве аргументов элементы, то функция вернёт только первый.
// Лучше эту проверку поместить после следующей, чтобы всё таки функция прошлась по всему списку.if (Ajax.isElement( id)) return id;
var el = null;
if (arguments.length > 1) {
for (var i = 0, els = [], length = arguments.length; i < length; i++) {
els.push( $( arguments[i]));
}
return els;
}
return $d.getElementById( id);
};