Текущий архив: 2015.09.10;
Скачать: CL | DM;
Вниз
Ничего не меняется Найти похожие ветки
← →
Dimka Maslov © (2014-12-01 20:13) [0]Лет так очень давно назад (в самом начале века) я между делом осваивал такую область знаний как html/css/javascript и проч. интернетовские штуки. В те годы было известно, что в разных браузерах разная объектная модель докумена и вообще. Потом я это дел забросил, а тут решил запились себе такую весчь, как кучка html-страничек с гитарными аккордиками и кнопками транспонирования. Задача элементарная - в текст внедряется теги вида <a name="ch">Am</a> плюс две кнопки: вверх и вниз. На кнопках висит скрипт, который тупо перебирает все теги и меняет аккорд. Заменяю через document.anchors[i].text = newChord. В лисе прекрасно работает. Копирую на телефон (для него всё и задумывалось). Не работает. Делаю document.anchors[i].innerText - на телефоне работает, в лисе не работает.
Внимание, вопрос!
Почему и через без малого пятнадцать лет приходится сталкиваться с такой проблемой, как различное поведение браузеров? Что они там до сих пор договориться не могут?
← →
DVM © (2014-12-01 21:44) [1]
> Dimka Maslov © (01.12.14 20:13)
> Почему и через без малого пятнадцать лет приходится сталкиваться
> с такой проблемой, как различное поведение браузеров? Что
> они там до сих пор договориться не могут?
потому что все давно плюнули и используют jQuery где все во всех браузерах одинаково.
И удобнее на порядок.
← →
Eraser © (2014-12-01 21:46) [2]
> Dimka Maslov © (01.12.14 20:13)
потому что надо книги читать, ну или хотя бы какие-то элементарные основы современной веб-разработки изучить хоть как-то, хоть примерно. не наткнуться на какой-нибудь jquery это надо сильно постараться.
← →
SergeyIT © (2014-12-01 21:53) [3]Чтобы забить гвоздь, а старого гвоздя нет, надо взять новый, в магазине купить новый молоток (старый к новым гвоздям не подходит), в книжной лавке купить новый самоучитель по забиванию новых гвоздей... но не вздумайте сами забивать гвоздь - надо обратиться в фирму, имеющую лицензию на забивание этих новых гвоздей, и вызвать мастера... и не забудьте, что звонить надо, используя новый телефонный аппарат, а если такого нет, надо пойти в магазин........
← →
junglecat © (2014-12-01 22:17) [4]> Что они там до сих пор договориться не могут?
с какой радости конкурентам договариваться?)
← →
кгшзх © (2014-12-01 22:17) [5]Почему и через без малого пятнадцать лет приходится сталкиваться с такой проблемой,
ты бы еще спросил почему твой пятнадцатилетний код из Д1 как-то криво работает сегодня в ХЕ7
правильно сказали.
не трогай дом сам. есть куча фреймворков от самых миниатюрных до самых жирных.
← →
KilkennyCat © (2014-12-01 22:26) [6]да-да, кудаж без костылей-то... наставить дживерей и прочего г. А г. - потому что сделано через ж. Стандарты есть, но всем с. Вот и гармония - с. из ж. г.
И еще аналогия:
Спрашивает человек: епрст, а чеж дороги-то то асфальт, то щебенка, то яма, то железяка торчит, невозможно нормально на велике ехать? А ему отвечают: да ты даун, ты дирижабль прицепи и лети над дорогой.
А ему на велике по дороге ехать охота, дирижабль и в ж. не ус.
← →
кгшзх © (2014-12-01 22:29) [7]ты перед тем как бить себя пяткой в груздь поинтересуйся сколько десятков байт весит костыль prototype
← →
кгшзх © (2014-12-01 22:31) [8]А ему на велике по дороге ехать охота, дирижабль и в ж. не ус.
так и пусть ехает, кто мешает-то?
а пока его пост на русский переводится как пятнадцать лет ничего не слышал, хочу ехать на своем кривом коде, дирижабля не хочу.
хочешь - смотри как делают другие.
чего жаловаться-то?
← →
KilkennyCat © (2014-12-01 22:44) [9]если отбросить 15 лет, вот ща я начал прямо с нуля. формулирую вопрос: какого х. делает w3c, если даже чистый html поддерживается абы как? а и какого того же самого делают движкомейкеры трижды по пятнадцать им якорей в ж., выдумывая всякие свои фишки?
че вот с байтами все на х86 хорошо, по 8 бит в каждом, какой не возьми? сделали бы в одном 7, в другом 9. и байтквери в догонку, чтоб кое-как у всех около 8 бит было.
← →
Dimka Maslov © (2014-12-01 22:45) [10]Т.е. вы, милостливые господа, ради исполнения элементарной функции замены текста в файлах, которые будут храниться локально в памяти телефона предлагаете прикрутить какую-то хрень которая внезапно "супер-пупер-всё-сама-сделает". Хорошо ещё, что виртуальную машину специальную ставить не надо на телефон, чтобы она сама всё единообразно делала.
А мой код пятнадцатилетней давности, кстати, вполне себе прекрасно работает в современном окружении.
← →
кгшзх © (2014-12-01 22:53) [11]В чем вопрос-то?
в том что элементарную функцию не в состоянии форкнуть под пару движков?
Или в нежелании знать ни одного лишнего фреймворка?
Типа только все свое, с огорода?
← →
кгшзх © (2014-12-01 23:01) [12]А мой код пятнадцатилетней давности, кстати, вполне себе прекрасно работает в современном окружении.
зачем дурачка-то включать?
речь же шла не о скомпилированном 15 лет назад коде.
а о коде написанном 15 лет назад в Д1 и вставленном сегодня в XE7.
какого х. делает w3c
а вы напишите про них в спортлото.
← →
kilkennycat © (2014-12-01 23:06) [13]написал в спортлото. А поможет?
← →
DVM © (2014-12-01 23:06) [14]
> Dimka Maslov © (01.12.14 22:45) [10]
> ради исполнения элементарной функции замены текста в файлах,
> которые будут храниться локально в памяти телефона предлагаете
> прикрутить какую-то хрень которая внезапно "супер-пупер-
> всё-сама-сделает"
Это не хрень, это дефакто стандарт уже, более того она уже на твоем телефоне давно в кэше браузера лежит.
> Хорошо ещё, что виртуальную машину специальную ставить не
> надо на телефон, чтобы она сама всё единообразно делала.
>
уже стоит, и не одна на твоем телефоне, для доступа к DOM модели ты ее как раз используешь.
← →
Ellisium © (2014-12-01 23:10) [15]Dimka Maslov, в таком элементарном примере как ты привел - скорее всего, ты нарушил стандарт. Вопрос только в том, что одни браузеры позволяют одни отклонения от стандарта, другие браузеры - другие отклонения от стандарта.
Почему они позволяют отклонения - тоже понятно, иначе такой супер правильный браузер слишком часто криво бы отображал страницы и проиграл конкуренцию.
Очень зачастую браузеры пытаются додумывать кривой код web-писателей, например пытаются автоматически закрывать теги </td></tr> в табличной верстке.
Есть и покруче примеры, например я как-то написалcolor="grey"
- понятно, что такого цвета нету, правильно писать "gray", но какой-то браузер (не помню какой и какой версии) интерпретировал это как зеленый, то есть "green" :)) Видимо, любой цвет, начинающийся на "gre" он понимал как зеленый. Вот даже до такого, а я знаешь как ломал голову, почему серый превратился в зеленый :)
Это мы не затронули тему указания стандарта. Ты в начале HTML страницы задал стандарт в котором пишешь? Версию HTML / xHTML?
Да, в этой технологии до сих пор много косяков, но если указать версию стандарта (желательно современного) и писать в рамках этого стандарта - почти все современные браузеры будут отображать его корректно. Можно критиковать не до конца полную совместимость, но это лучшая межбраузерная / межплатформенная совместимость, которая только существует на текущий момент в мире.
← →
Ellisium © (2014-12-01 23:12) [16]
> Это не хрень, это дефакто стандарт уже, более того она уже
> на твоем телефоне давно в кэше браузера лежит.
ну не так часто ссылку на библы делают в общедоступные места типа гугла. Зачастую они локально на сайт ведут, а поэтому никакого кеша и все будет грузиться заново.
← →
DVM © (2014-12-01 23:31) [17]
> Ellisium © (01.12.14 23:12) [16]
> ну не так часто ссылку на библы делают в общедоступные места
> типа гугла
CDN называется.
← →
jack128 © (2014-12-01 23:42) [18]
> ну не так часто ссылку на библы делают в общедоступные места
> типа гугла. Зачастую они локально на сайт ведут, а поэтому
> никакого кеша и все будет грузиться заново.
а часто - и не нужно. Достаточно того, что яндекс/гугль/ms используют свои кдны. Соотвественно если потенциальная аудитория твоего сайта использует яндекс, просто используй кдн яндекса.
← →
Dimka Maslov © (2014-12-01 23:52) [19]
> хочешь - смотри как делают другие.
Это абсолютно не означает, что другие делают именно так, как надо мне.
> в том что элементарную функцию не в состоянии форкнуть под
> пару движков?
За каким нужны эти ваши движки-фремворки? Чтобы на решение задачи вместо пятнадцати минут потратить несколько дней, дабы разобраться, как эти поделия работают? А потом ещё столько же, чтобы это заработало? Или чтобы Hello, World! вместо 14 байт занимал 14 гигабайт, которые с собой нужно везде таскать.
> а о коде написанном 15 лет назад в Д1 и вставленном сегодня
> в XE7.
Про ХЕ7 не знаю, но перенос кода из Delphi3 до Delphi 2009 у меня почему-то прошёл без проблем. Наверное неправильно переносил. Без фреймворков всяких.
> Это не хрень, это дефакто стандарт уже, более того она уже
> на твоем телефоне давно в кэше браузера лежит.
Не знаю, какой там дефакто стандарт лежит в кэше браузера, но на разных телефонах и на разных браузерах даже доступ к скрипту, пока он не был жёстко вшит в тело html-документа, происходил по разному: тут откроет, тут не откроет, тут загрузит, тут не загрузит. А то и вообще file:/// не понимают, и на гугл искать лезут. Какой тут может быть дефакто стандарт? И что будет, когда кэш браузера будет очищен? Весь фрейморк улетучится?
> уже стоит, и не одна на твоем телефоне, для доступа к DOM
> модели ты ее как раз используешь.
Так вот почему он (телефон) так глючит и тормозит, оказывается! Вместо того, чтобы всё просто работало, "фреймворков" напихали.
> в таком элементарном примере как ты привел - скорее всего,
> ты нарушил стандарт. Вопрос только в том, что одни браузеры
> позволяют одни отклонения от стандарта, другие браузеры
> - другие отклонения от стандарта.
А вот это действительно возможное объяснение, а не предложение использовать дизель-молот для задавливания канцелярской кнопки.
← →
Dimka Maslov © (2014-12-01 23:54) [20]
> потенциальная аудитория твоего сайта
Потенциальная аудитория моего "сайта" строго равна одному человеку. Это я сам и больше никто.
← →
DVM © (2014-12-01 23:58) [21]
> Dimka Maslov © (01.12.14 23:52) [19]
> Так вот почему он (телефон) так глючит и тормозит, оказывается!
> Вместо того, чтобы всё просто работало, "фреймворков" напихали.
>
Я про движок JavaScript. Без него все равно ты до DOM не доберешься.
> За каким нужны эти ваши движки-фремворки? Чтобы на решение
> задачи вместо пятнадцати минут потратить несколько дней,
> дабы разобраться, как эти поделия работают
Ой да ладно. Там разбираться с тем что тебе нужно 5 минут от силы (jQuery). А ты же будешь колупаться с выяснением того как уже твой код ведет себя на разных браузерах полдня.
> Не знаю, какой там дефакто стандарт лежит в кэше браузера,
> но на разных телефонах и на разных браузерах даже доступ
> к скрипту, пока он не был жёстко вшит в тело html-документа,
> происходил по разному: тут откроет, тут не откроет, тут
> загрузит, тут не загрузит. А то и вообще file:/// не понимают,
> и на гугл искать лезут. Какой тут может быть дефакто стандарт?
> И что будет, когда кэш браузера будет очищен? Весь фрейморк
> улетучится?
странные у тебя проблемы честное слово, небось до сих пор пытаешься под Netscape Navigator 4 оптимизировать?
← →
DVM © (2014-12-02 00:01) [22]
> Dimka Maslov © (01.12.14 23:54) [20]
> Потенциальная аудитория моего "сайта" строго равна одному
> человеку. Это я сам и больше никто.
тем более, посмотрел бы на jQuery с ней манипуляция дом моделью становится похожей на игру. Да и вовсе она не тяжелая. Один файл.
← →
Dimka Maslov © (2014-12-02 00:07) [23]
> Ой да ладно. Там разбираться с тем что тебе нужно 5 минут
> от силы (jQuery)
А потом они выкатят апдейт и работать перестанет. Проходили такое и не раз.
> небось до сих пор пытаешься под Netscape Navigator 4 оптимизировать?
Нет, только встроенный браузер, который внезапно не хочет цеплять скрипт, если он лежит в отдельном файл и опера-мини, которая не понимает, что файл нужно взять локально, а не лезть за ним в интернеты, которые 99,999% времени на телефоне у меня отключены. Ну и лиса, раз я всё-таки на компе это делал.
← →
Dimka Maslov © (2014-12-02 00:16) [24]
> становится похожей на игру. Да и вовсе она не тяжелая. Один файл
На сколько мегабайт? И даже если совсем не много, то из-за особенностей встроенного браузера (в данную конкретную модель телефона), всё это придётся запихивать в каждый файл. А их больше сотни. Тем более, что данная конкретная задача решается дописыванием 1 (одной) строки в скрипт, после чего это начинает работать практически везде. И что получает выгоднее? Игры с манипуляциями или быстрое решение, после чего эту шнягу можно будет забыть на очередные 15 лет?
← →
junglecat © (2014-12-02 09:18) [25]> На сколько мегабайт?
jquery-1.9.1.min.js - 92k
← →
Eraser © (2014-12-02 12:10) [26]
> DVM © (01.12.14 23:58) [21]
каких пол дня? такие идейные месяца тратят на подобную деятельность по изобретению велосипедов, главное вовремя распознать ))
← →
кгшзх © (2014-12-02 13:44) [27]данная конкретная задача решается дописыванием 1 (одной) строки в скрипт, после чего это начинает работать практически везде.
да ладно. ты гонишь.
я всю жизнь думал что во фреймворках это делает невидимый зеленый и умный человечек с помощью браузерной магии, а вовсе не сами авторы написали более интеллектуальный код.
← →
картман © (2014-12-02 15:05) [28]
> Очень зачастую
надо будет запомнить
← →
junglecat © (2014-12-02 15:08) [29]> Очень зачастую
= не совсем всегда
← →
Dimka Maslov © (2014-12-02 15:18) [30]Любители забивать канцелярские кнопки в стену дизель-молотом не должны потом жаловаться, что стена обрушилась.
Страницы: 1 вся ветка
Текущий архив: 2015.09.10;
Скачать: CL | DM;
Память: 0.55 MB
Время: 0.039 c