добрый вечер! есть массив mass_content объявляемый в js файле var mass_content = new Array( new Array('бла бла бла','бло бло бло','ололо')); на самом деле содержимое элемента mass_content[0] чуть более 15 000 символов русского и английского текста. кодировка UTF-8 ну вы понимаете в чём собственно беда... такой файлик имеет размер почти 16КБ, а это ведь далеко не всё... посчитал - нужно расширять массив.. очень при очень сильно, а это примерно на 280КБ объёма. тобишь загрузка такого файла на страницу займет аж 3 - 4 секунды. так вот вопрос в том, можно ли обработать эти данные для уменьшения объёма?? но так, чтобы потом эти данные без проблем извлечь в исходном виде?? с уважением Манта.
но но... сайт к серверу обращений не делает. вообще изначально хотелось хранить этот массив в файлах на серваке и со страницы делать AJAX запросы... но в связи с некоторыми моментами этого сделать невозможно... это я делаю проект для экзамена, а там где он будет представлен стоит фильтр.(( есть функции шифровки строк.. но уменьшают ли они объём?? а может есть специальное для этих целей средство?? ну как то так)
нет, ты наверное не понял... надо сжать не страницу, а содержимое массива... var a = new Array("очень много текста"); надо что то сделать с a[0] чтобы из очень много текста сделалось нечто, что занимает меньше памяти и в любой момент может быть обратно расшифровано в очень много текста
так если сжать страницу, то она как js файл никакой ценности не имеет. ajax мне использовать нельзя. Добавлено спустя 1 минуту 17 секунд: кстити ajax запрос обязательно должен быть обращен к серверу?? можно ли его делать по протоколу file на свой комп?
текст будет сжат, передан браузеру и разжат браузером. http://yandex.ru/yandsearch?text=gzip+%D1%81%D0%B6%D0%B0%D1%82%D0%B8%D0%B5
спасибо за ссылку. посмотрю, если будут вопросы напишу Добавлено спустя 7 минут 2 секунды: неее.. это не то. я не гружу файлы на сервер. проект будет проверяться на компе с жесткого диска
блин, если ты хочешь уменьшить трафик, то используешь gzip всё. а что вы не используете веб-сервер при сдаче курсовой это видишь ли не ебёт создателей веба =)
да да нельзя мне чисто физически использовать этот гзип...((трафик тут не причём - если бы использовал сервер, то загружал данные запросами и всё норм.., а так вся инфа храниться в массиве js и это занимает очень много места. просто потом загрузка такого файлика может увеличиться до 30 секунд..((
При таких обстоятельствах я бы рекомендовал данный контент переменной засунуть в спрятанный див с каким-то id. далее, на domready берём в переменную контент дива. Код (Text): var xx=document.getElementById('div_id').innerHTML У вас не исполняемый код js весит много, у вас статический контент переменной весит много, а что будет если вам при сдаче проекта скажут "ану-ка, давайте-ка будем выводить timestamp в переменную" ? Данный контент нужно формировать в php и пихать в страницу, а не js.
Вообще да, у автора одни проблемы - нельзя аякс, нельзя гзип и текста много-много. зачем, мне просто интересно, столько текста в переменной?
потому что у него там видимо нет ни вебсервера ни бд. т.е. проект надо показать на тех данных, которые он вручную вкрячит в js файлик.
Тогда, все-таки, где-то косяк с кодировкой... Проще-это проверять, делая новую папку с UTF-8 (без BOM). =) Имею ввиду, .htaccess, файлы: *.php, *.html, *.css, *.js (Некоторые редакторы не увидив в файле текст русский, он его не сохранит, полезно оставлять русский коммент) Во всех файлах css назначить @charset 'utf-8'; А также нужно сделать соединения в utf-8, установить локаль, <meta> и заголовки. Чтобы быть уже уверенным, что у тебя utf-8 =) И также работать с mb_* функциями и конвертированием, чтобы к себе принимать, только в utf-8.