Вопрос № 29491: Уважаемые эксперты! Вот, думаю, это будет достойный по сложности вопрос. Если же нет, извините :)
Как оперировать спецсимволами в JavaScript, особенно во внешнем.
По идее JavaScript должен работать с Unicode, но во всех пособиях, этого к...
Вопрос № 29.491
Уважаемые эксперты! Вот, думаю, это будет достойный по сложности вопрос. Если же нет, извините :)
Как оперировать спецсимволами в JavaScript, особенно во внешнем.
По идее JavaScript должен работать с Unicode, но во всех пособиях, этого касаются вскользь.
1. Как прописать символ Уникода (например, умляута) в примерно таком синтаксисе: u+0040. До сих пор не удалось получить положительного результата. Как правильно?
Такие варианты тоже не получились: http://myland.dp.ua/book/JavaScript/specialsymbols.html
Что я делаю неправильно?
2. У меня содержание HTML+JS смешенного контента. Поэтому задать charset="конкретная раскладка", я не могу. Можно ли задать charset="Unicode"?
3. Очевидно, если charset="Unicode" в HTML работает, то такое указание на кодовую страницу будет распространяться и на расположенный внутри HTML JavaScript. А вот если я вынесу JavaScript во внешний файл? Как там прописать, что используемый внутри текст (лучше весь!) использует Уникод?
4. Какие редакторы корректно работают с Unicode (HTML-Kit на прямую точно не работает). Т.е. я мог бы вводить любые символы "по-человечески", а не через u+0040 КАЖДЫЙ (!) символ - это ж с ума сойти! При том ориентироваться в таком тексте человеку невозможно, а нужно так, как, например, в Word: переключил раскладку в немецкий, французский, греческий ... (любой язык!) и получил их как нормальный текст, в виде букв, а не в виде символов.
По сути Уникод призван разрешить все перечисленные выше задачи. Но как он это решает, все молчат.
Например, мне нужно (на русской в основном страничке) использовать JS-функцию, например, str.IndexOf(ç ; à ;) str.IndexOf(çà), т.е. обращаться к "другому" языку. Вот из-за таких постоянных сложностей и возник вопрос. Хотелось наиболее универсального решения. Хотя интересны и все варианты.
Повторюсь:
Использовать спецсимволы крайне нежелательно. Уникод-символы, каждый по отдельности вводить - тоже. Желательно, работать внутри единого Уникод-пространства, даже используя "Просмотр HTML-кода" , не вспоминать: "как же цифры кодируют этот символ", или же: "что же за слово скрывается за этими кракозябрами".
Отвечает: Дмитрий Иванов
Здравствуйте, Протасов Алексей Викторович!
Есть charset 'utf-8','utf-32', о просто charset 'Unicode' слышу впервые.
JavaScript напрямую связан с charset'ом страницы.
Знаю DreamViewer поддерживает Unicode , ну и понятно сам FrontPage,
www.dao.lv - написан на utf8, правда для удобного редактирования статей я использую HTML'ный редактор встроенный в сам сайт, поэтому проблемм с кодировкой не возникало.
--------- ставя оценку - подумай, может ты не все описал.
Ответ отправил: Дмитрий Иванов (статус: 5-ый класс)
Отправлен: 14.11.2005, 00:47 Оценка за ответ: 5 Комментарий оценки: Ты попал прямо в десятку, Дмитрий! DW MX работает (пользуюсь 7.0. Может новее есть?). У глючного IE Уникод просто обозвали "Unicode" без пояснения какая это кодировка. Оказывается, именно UTF-8. Узнал благодаря тебе и DW.
Знаю также UTF-16, UCS-2, UCS-4. А вот о предложенном тобой UTF-32 слышу впервые. Не пробовал, но говорят, что и XML-Spy
корректно работает с Уникод.
Пока же не могу понять почему ни у тебя на сайте, не в DW не закавычены правильно значения: вместо