Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 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.56 MB
Время: 0.128 c
4-1272012311
bwwebm
2010-04-23 12:45
2015.09.10
Функция _open_osfhandle или ее импорт


15-1412001218
L_G
2014-09-29 18:33
2015.09.10
Многопоточное программирование: низкий старт


15-1415338310
SKIPtr
2014-11-07 08:31
2015.09.10
Серебряная Калоша2014


15-1420313485
alexdn
2015-01-03 22:31
2015.09.10
Конвертер php в delphi


1-1331096953
ssmplec
2012-03-07 09:09
2015.09.10
Проблема с cxGrid RepositoryItem