Javascript-форум (https://javascript.ru/forum/)
-   Javascript под браузер (https://javascript.ru/forum/css-html/)
-   -   Совместимость синтаксиса JavaScript в XML/HTML (https://javascript.ru/forum/css-html/34673-sovmestimost-sintaksisa-javascript-v-xml-html.html)

jsjob 14.01.2013 19:19

Совместимость синтаксиса JavaScript в XML/HTML
 
Практически "всё работает", но хочу просвЯтиться в теории и стандартах
<script type="text/javascript"><!--
var A=0;
--A;
var S="Здесь был Вася";
//-->
</script>

1) JS операция декремента в синтаксисе HTML обозначает конец комментария.
2) Кавычки в XML не допустимы.

И как дальше с этим жить? :-E

dmitriymar 14.01.2013 19:55

Цитата:

Сообщение от jsjob
И как дальше с этим жить?

учится для начала, а не придумывать проблемы
http://www.w3schools.com/xml/xml_cdata.asp

Цитата:

Сообщение от jsjob
<script type="text/javascript"><!--
var A=0;
--A;
var S="Здесь был Вася";
//-->
</script>

этож насколько браузер должен быть древним , чтоб так писать?

jsjob 14.01.2013 20:40

Насколько я понимаю, CDATA не будет работать в HTML-браузерах без XML-парсера.

Меня интересует вопрос - возможно ли оформить JS код так, чтоб HTML-страница была одновременно валидной как HTML4/5, так и XML, работала бы без ошибок в старых и специальных браузерах.

tenshi 14.01.2013 20:40

> JS операция декремента в синтаксисе HTML обозначает конец комментария.

только в sgml и толко внутри декларации. впрочем, не начинай комментарий

> Кавычки в XML не допустимы

допустимы

jsjob 14.01.2013 20:48

tenshi,
С первым, конечно, правильно, хотя я "предпочёл" просто написать A=A-1 ;)
Насчёт кавчек, не уверен, но по XML они д.б. заменены на мнемоники, и парсер должен останавливаться, если кавычка встретится вне тега. А на мнемонику можно заменить кавычки у скрипта только если скрипт вписывается в событие тега.

dmitriymar 14.01.2013 20:59

Цитата:

Сообщение от jsjob
Насколько я понимаю, CDATA не будет работать в HTML-браузерах без XML-парсера.

а это какие , что понимают только html? прошлого века выпуска?
Цитата:

Сообщение от jsjob
чтоб HTML-страница была одновременно валидной как HTML4/5, так и XML, работала бы без ошибок в старых и специальных браузерах.

а доктайп тогда зачем нужен по вашему? новые браузеры понимают старые стандарты -вот и пишите всё согласно самому старому стандарту
повторю ещё раз-не придумывайте проблемы самостоятельно

jsjob 14.01.2013 22:57

DOCTYPE - зло :-E

При использовании DOCTYPE в документе, браузер будет вероятно использовать соответствующий парсер, который не может быть надёжнее универсального. Многолетняя практика показывает, что валидный и с DOCTYPE документ будет с большей вероятность сломан одним из браузеров, чем без этой хрени.

melky 14.01.2013 23:03

Цитата:

Сообщение от jsjob (Сообщение 227251)
Практически "всё работает", но хочу просвЯтиться в теории и стандартах
<script type="text/javascript"><!--
var A=0;
--A;
var S="Здесь был Вася";
//-->
</script>

1) JS операция декремента в синтаксисе HTML обозначает конец комментария.
2) Кавычки в XML не допустимы.

И как дальше с этим жить? :-E

интересно, для клиентов из какой вселенной вы сайт пишите, если такими вопросами задаётесь?

dmitriymar 14.01.2013 23:06

Цитата:

Сообщение от jsjob
Многолетняя практика показывает, что валидный и с DOCTYPE документ будет с большей вероятность сломан одним из браузеров, чем без этой хрени.

лучше бы у вас был хотя бы минимальный опыт , а не многолетняя практика, с ним бы подобных вопросов, фраз и желания читать статьи ,написанные людьми явно не в теме , не возникало бы.

jsjob 14.01.2013 23:15

Цитата:

Сообщение от melky (Сообщение 227278)
интересно, для клиентов из какой вселенной вы сайт пишите, если такими вопросами задаётесь?

АПВС

Цитата:

Сообщение от dmitriymar (Сообщение 227279)
лучше бы у вас был хотя бы минимальный опыт

Большое спасибо


Часовой пояс GMT +3, время: 15:46.