Ладно, заебали. Баттхерт вещь могучая... покруче эболы. Ну а что блин, если надо то и круглые приравняем к string definition, и звезды, и буквы Х и все что угодно лишь бы доказать что все было сделано правильно. А когда алфавит весь задействуете то вот таким каким вот \х\у\e\м будете писать?
|
Цитата:
У тебя два пути: использовать getElementById либо эскейпить. Вопрос исчерпан. |
Цитата:
|
Цитата:
А насчет document.write я понял почему они такую лабуду пишут. ПОтому что что нет русской секции в статье на википедии - http://en.wikipedia.org/wiki/Opaque_data_type Великая нация программистов ниасилила перевести, а если по-русски не написано, то его и нет. |
И вот тут кстати да, интересный вопрос, что для js вообще opaque string, если этот ебалайтен позволяет мне набрать вот такой текст
var help='Управление просмотром товаров\n--------------------------------------------------------------\n\n' +'с помощью мыши:\n\tследующий товар - щелчок по правой стороне экрана.\n\tпредыдущий - по левой.\n\n' +'с клавиатуры:\n\tстрелками <- назад, или вперед ->\n\t(аналогично стрелками "вверх" и "вниз")\n\n' +'закрыть просмотр:\n\tвыбрать меню "закрыть"\n\tщелкнуть мышью примерно в центре картинки;\n\tкнопкой Esc с клавиатуры;\n\n--------------------------------------------------------------\n\n' +'Если наименование товара подчеркнуто - это ссылка на страницу товара'; и все спокнойно переносится и даже в ФФ табулируется. В норме, если это opaque string - как и следует из одинарных кавычек, то я получил бы \n в виде текста. Гавно этот ваш JS, согласен. :) ЗЫ Да, чета я не нашел быстро функцию string() или там str_pad() для набора ------ видимо ее нет. |
В getElementById передаётся конкретно ID елемента, а вот в jQuery или querySelector передаётся CSS-селектор, который работает по правилам CSS.
Не понимаю, в чём проблема просто получить через getElementById или экранизировать квадратные скобки. var elem = $(document.getElemenById('user[0]')); var elem = $('[id="user\\[0\\]"]'); |
То есть если 'внутри' как предполагается непрозрачной строки я размещаю "другой определитель строки" и он спокойно выводится как текст, то признак 'такая строки' непрозрачный, но из непрозрачной строки не может выйти перенос по \n и тем более \t.
В php 'когда надо сделать перенос так и делается'."\n" иначе получишь \n в тексте. А заключать весь текст в прозрачные кавычки - "черевато", может бНОПНЯ вылезти. Так где вы говорите в JQ селект по id - ну так чтобы объект jq сразу получить? |
Цитата:
Второе - name в переменной, мне придется регой слэшить. Маразм. |
Цитата:
|
Цитата:
Что-то не нравится, то пиши свою библиотеку, где можно будет сувать в ID что угодно. |
Про документ.райт, специалистам, вот так пишите:
document.write('<div id="my_[lovely]_square[brackets]">I hate you too</div>'); и все должно быть чики-пуки. На php так все и пишут, а иначе как эти теги из echo отрендерить - слэшить что ли? Никто так не делает. |
Цитата:
Да, конечно, но сначала надо обосрать то что есть для энтузиазма. :) |
Цитата:
getElementById. Т.е. все упирается в разбор селектора. И тут вы обязаны правильно оформлять селектор (в понимании jQuery - ибо оно и парсит). Согласитесь если вы в регулярку воткнете "elId[0]" то тоже получите не то, что ожидаете.И если вы будете пользоваться регуляркой то вам потребуется подчинится правилам оформления регулярных выражений. Здесь все то же самое вы пользуетесь конкретным продуктом, так и следуйте его правилам. В чем проблема то? Что то не доработано и не привычно? Так что с того, мне после С/С++ весь JavaScript тоже мозг выносит.. Только недавно стал привыкать.... Но зауши то ни кто не тянет. |
Цитата:
А когда занялся то споров уже не было - в редких кусках кода только попадались решетки, дизайнеры сочли что классы все-таки лучше. Поэтому я сделал умозаключение что никакой нормальный человек не будет пихать решетку в свой css и стало быть id теперь нормальный явный ключ к элементу. Прежде чем давать всякие там id конечно же начитался спецификаций и практики - потому что всякое бывает. Из практики вытекало что id может быть любым и у меня бывали случаи косяков в php когда скрипт фигачил одни только числа - все пахало как из пушки. Ну то есть ассоциировать id и css может либо только очень-очень старый дизайнер, или очень-очень упертый. Я понимаю что jquery гавно древнее и именно с решеток все и началось. Но все-таки тренд давным давно такой, что надо отделять структуру от представления. В общем х с ними, буду теперь иметь ввиду что JQ так и остался зарешеченым. |
Цитата:
|
Цитата:
Что касается повторять API - ну и что, зато все логично - по id нашли одномоментно завернули в свой контекст. |
Цитата:
Цитата:
Цитата:
|
Цитата:
|
Хорошо я с 14 летним стажем программирования на php буду слушать гуру со стажем 1 год....
А если читать все комменты и бояться - придется от всех фунций отказываться. Надо мозгом думать, что, зачем и в каких ситуациях использовать..... |
То есть у меня систематически можно наблюдать такие перлы
<div class="thumbs" id="thumbs"> потому что я сделал стили .thumbs и присвоил, но чтобы найти элемент думаю про ID и добавляю ID, а чтобы не придумывать лишнего - такой же. Значит в терминах JQ я должен сделать стили #thumbs и применять только один id="thumbs" и все будет оформлено. Нет, я как бы знал что оно есть, но ни разу не подумал что оно может быть применимо. У меня не срастается в голове понятие структуры и представления в один кусок. ID - это признак из домена структуры, а class - из домена представления. Как же я их соединю, а вдруг чего-то там не туда, и все такое... поэтому <div class="thumbs" id="thumbs"> и пох, все на своих местах. |
Цитата:
|
Самая ирония в том, что я когда подключал JQ подумал: как хорошо что не придется писать эти длинные фразы document.getElementById(... х нанэ! придется :)
Я понял, спасибо всем. То есть user[0] должен быть классом. Типа class="user[0]" - ну конечно такого я бы не допустил и такого сроду не было. Но откуда мне было знать что по ID либа ищет по правилам CSS. |
Цитата:
Цитата:
Через селекторы jQuery вы можете обращаться и по тегу, и по ид, и по имени, и по атрибутам..... а так же применять фильтры. Вот и нужно относится к этому селектору грамотно. Цитата:
|
Цитата:
А вообще вместо потоков слов. Привели бы минимально необходимый кусок кода. Что то мне подсказывает, что вы городите какойто огород, там где можно обойтись "парой" строк. |
Но, что оно тогда находит по #user[0] ? - zero не возвращается, if(elem) проходит.
Откуда берется user[0] - это просто первое поле в форме которую сделал скрипт php по прототипу формы в объекте. Имя может быть любым, хоть с одной буквы, типа f[0]. Процессинг пользуясь прототипом все спокойно находит по индексам в отпарсенном php результате запроса. Но иногда нужны отношения между полями - как их сделать? Через data- теги что ли? По data- искать, ну, форма, конечно, не в 1000 полей, но все равно не кошерно. А если взять и соединить по name-id то все кайфово срастается. Кроме того у меня в datagrid по name-id связываются заголовки таблицы с полями которые вылезают в ячейках таблицы в режиме редактирования. У заголовков id, у полей name. Форма со своим namespace - лафа. |
Цитата:
|
Вы бы привел ихотя б html (можно в песочнице). По мне так и id то там не особо нужен.
|
Цитата:
Интересно, вы читали, например, учебник на этом сайте? Там хорошо расписано с таким отношением и при стечении обстоятельств может получить забавный баг, который не сможете понять. Без всяких jQuery. не поленился нашел, там есть инфа для "отправной точки" http://learn.javascript.ru/attribute...tom-properties |
Цитата:
Кстати, меня крайне удивляют коды такого рода, когда чел пишет как будто из Greasemonkey. Понахерачт несусветных селекторов - блеать, как будто чужой html получают. Ну нахерач туда этих ID хоть на все подряд и селектируй однозначно. Или в чем глубокий смысл выбора по всей этой тряхомудии? |
Это он так обучается, да, есть такой способ - вступить в спор и таскать на осмотр всякую хрень и запоминать что сказали о какой хрени. Я же вам написал что свойства объекта нас не колебут - я даже ни одного не знаю. Нас колебут атрибуты - а вы их назвали свойствами. Атрибуты - это не свойства.
|
kostyanet, не вижу ничего плохо в использовании # в CSS. Всё зависит от ситуации. Всё просто: class - несколько элементов, id - один.
Если у тебя допустим есть какой-нибудь уникальный элемент, у которого есть ID и ему нужно применить уникальный стиль, то класс будешь писать? Кстати, если я не ошибаюсь, то в CSS решётка быстрее обрабатывается. |
Цитата:
|
Цитата:
Ни кто не запрещает заниматься велосипедостроем. Это уж не раз в ИТ проходили. Писали на чистых сях и не было понятно зачем либы. Теперь "чистые" си только для специфичных кусков кода. И так во всех языках.. |
Цитата:
А якоря - вещь непостоянная. Я дополнительно проставил классы, и сплю спокойно. |
Цитата:
И вообще, методом исключения JQ должен выйти на конечнную инстанцию - на opaque id, потому что в списке ничего не подходит под шаблон user[0] http://api.jquery.com/category/selectors/ А мне возвращают не zero, а какую-то бНОПНю кроме того. |
Щас попробую донести
<div> <id>9</id> <text>Ones upon a time a little chick starts suck big dicks...</text> <class>LovelyHistory</class> </div> Так должно быть, правильно? Мы имеем право засунуть в структуру информацию об оформлении, но не само оформление. Ну как имеем право - так не XML не делается, но кто нам запретит - это же не оформление, а данные об оформлении (представлении). Вот так я и понимаю id и class, как компромисс между уебищем под названием html и идеалом под названием xml. |
Цитата:
Так кто постоянный, а кто дрыгается как цыпленок на сковородке от каждого тычка юзера? Ну то есть что может произойти с id вообще? |
Вот он список, кстатЕ
!"#$%&'()*+,./:;<=>?@[\]^`{|}~ надо же, блин, ну вроде я знал что по id и стили завязываются, но верил что никто этой тряхомудией давным давно не пользуется. Ну там на древних сайтах где еще так <IMG ALIGN=CENTER... оно может попадаться... |
Цитата:
|
Как это клиент изменит id по хешу? Короче, непостижимые для меня проблемы - а как это еще верстка сломается если хеш вбить левый?
|
Часовой пояс GMT +3, время: 18:01. |