Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 23.02.2013, 04:40
Новичок на форуме
Отправить личное сообщение для proseol Посмотреть профиль Найти все сообщения от proseol
 
Регистрация: 23.02.2013
Сообщений: 6

Исчезают плюсы в Javascript в IE
Такая проблема.
Сайт на Wordpress. Во всех IE браузерах не работает javascript. Если открыть консоль в IE и посмотреть ошибки, много таких ошибок как SCRIPT1004: Expected ';' и т.д. Кликнув по ошибке можно увидеть строку в JS, и в этой строке отсутствуют знаки '+' в объединении строк, хотя в оригинале плюсы стоят.
Например, в файле строка

var strline = '<a href="#" class="sexyslider-control" rel="' + i.toString() + '"><span>' + (i+1).toString() + '</span></a>';


А IE видит эту строку как

var strline = '<a href="#" class="sexyslider-control" rel="'  i.toString()  '"><span>'  (i).toString()  '</span></a>';


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

Сайт - http://www.danellesboutique.com/
Ответить с цитированием
  #2 (permalink)  
Старый 23.02.2013, 05:13
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Сообщение от proseol
А IE видит эту строку как
Поставьте после строки
var strline = '<a href="#" class="sexyslider-control" rel="' + i.toString() + '"><span>' + (i+1).toString() + '</span></a>';
alert(strline )
Думаю это дебагер так отображает
Ответить с цитированием
  #3 (permalink)  
Старый 23.02.2013, 05:55
Новичок на форуме
Отправить личное сообщение для proseol Посмотреть профиль Найти все сообщения от proseol
 
Регистрация: 23.02.2013
Сообщений: 6

с дебаггером ок
Нет, с дебаггером все ок, другие сайты отображает нормально.
И скрипт останавливается с ошибкой, указывая место первого '+', ошибка SCRIPT1004: Expected ';'
Тут что-то другое.
Видно что плюс заменяется пробелом. Но никак не могу понять что это может быть... Плюс заменяется на пробел при передаче в url, но ведь тут статичный .js файл... ???

P.S. в данном конкретном случае не суть что появляются ошибки в дебаггере ie, проблема в том что не работает JS, и объединение строк нужно использовать.

P.P.S. проблема не в моем браузере, не работает как минимум на 4-х разных машинах.

Последний раз редактировалось proseol, 23.02.2013 в 06:00.
Ответить с цитированием
  #4 (permalink)  
Старый 23.02.2013, 08:31
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Цитата:
HTML1114: Кодовая страница utf-7 из (Заголовок HTTP) переопределяет конфликтующую кодовую страницу utf-8 из (Тег META)
www.danellesboutique.com
Ответить с цитированием
  #5 (permalink)  
Старый 23.02.2013, 15:49
Новичок на форуме
Отправить личное сообщение для proseol Посмотреть профиль Найти все сообщения от proseol
 
Регистрация: 23.02.2013
Сообщений: 6

Изначально в <meta тоже определялась UTF-7, это уже мои эксперименты по поиску возможной проблемы. Так что это тоже ни причем
Ответить с цитированием
  #6 (permalink)  
Старый 23.02.2013, 15:59
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Сообщение от proseol
Так что это тоже ни причем
Хех. Ты не понял. Это и есть проблема!
У тебя контент реально в utf-8 кодировке. А заголовки говорят что, мол utf-7. В итоге браузер интерпретирует страницу неправильно, пытаясь читать ее как utf-7.

Шас погуглил, вот у чела схожая проблема:
Цитата:
UTF7 encoding reads everything ok, except eats the + signs, and some
characters after them
http://bytes.com/topic/c-sharp/answe...ding-text-file
Ответить с цитированием
  #7 (permalink)  
Старый 23.02.2013, 18:14
Новичок на форуме
Отправить личное сообщение для proseol Посмотреть профиль Найти все сообщения от proseol
 
Регистрация: 23.02.2013
Сообщений: 6

OK, спасибо! попробую сегодня и отпишусь - помогло или нет!
Но по любому спасибо за помощь и разъяснения!

P.S. добавил плюс. Я тут новичок, поэтому не знаю как благодарить но думаю, что поставил '+' правильно. Надеюсь, что и в коде у меня плюсы вернутся

Последний раз редактировалось proseol, 23.02.2013 в 18:16.
Ответить с цитированием
  #8 (permalink)  
Старый 23.02.2013, 18:34
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Я вот только не знаю где исправить это. Проблема может быть в .htaccess файле - в нем иногда задают кодировку по умолчанию.
Инструкции вида
Код:
AddDefaultCharset utf-8
AddCharset utf-8 .html .css .js .xml .json .rss
Возможно в index.php. А может в файле functions.php или что-то вроде этого в папке темы. Кстати да, скорее всего где-то в шаблоне это задано.
В php это делается через header('Content-Type: text/html;charset=utf-8')

То-есть должно быть как раз таки utf-8, а не 7.
Еще можно дописать тегам script атрибут charset="utf-8" если есть возможность и все остальное не помогло.
Ответить с цитированием
  #9 (permalink)  
Старый 23.02.2013, 22:22
Новичок на форуме
Отправить личное сообщение для proseol Посмотреть профиль Найти все сообщения от proseol
 
Регистрация: 23.02.2013
Сообщений: 6

Сообщение от danik.js Посмотреть сообщение
Я вот только не знаю где исправить это. Проблема может быть в .htaccess файле - в нем иногда задают кодировку по умолчанию.
Инструкции вида
Код:
AddDefaultCharset utf-8
AddCharset utf-8 .html .css .js .xml .json .rss
Возможно в index.php. А может в файле functions.php или что-то вроде этого в папке темы. Кстати да, скорее всего где-то в шаблоне это задано.
В php это делается через header('Content-Type: text/html;charset=utf-8')

То-есть должно быть как раз таки utf-8, а не 7.
Еще можно дописать тегам script атрибут charset="utf-8" если есть возможность и все остальное не помогло.
УРРРААА!!! Помогло, работатает. Огромнейшее спасибо!!! и + в карму (это кажется так называется?)
Ответить с цитированием
  #10 (permalink)  
Старый 23.02.2013, 22:30
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

А что помогло? Где была прописана неверная кодировка?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Книга: JavaScript. Сильные стороны Magneto Учебные материалы 16 21.04.2013 15:28
Интерпретатор Java на JS kobezzza Оффтопик 24 11.10.2012 18:32
Первый Moscow JavaScript Meetup korenyushkin Общие вопросы Javascript 0 26.07.2011 15:23
Последние книги по JavaScript! monolithed Учебные материалы 7 26.10.2010 19:40
Выдвет ошибку JavaScript Ромио Opera, Safari и др. 4 21.10.2010 20:34