Ошибка скрипта в IE 8

S
На сайте с 26.10.2007
Offline
74
2427

Суть проблемы:

В IE8 страницы сайта загружаются без верстки, смотрю где ошибается, ие8 пишет что ошибается в строке 152 в ней следующее:

$(document).ready(function() {
route = getURLVar('route');
if (!route) {
$('#tab_home').addClass('selected');
} else {
part = route.split('/');
if (route == 'common/home') {
$('#tab_home').addClass('selected');
} else if (route == 'account/login') {
$('#tab_login').addClass('selected');
} else if (part[0] == 'account') {
$('#tab_account').addClass('selected');
} else if (route == 'checkout/cart') {
$('#tab_cart').addClass('selected');
} else if (part[0] == 'checkout') {
$('#tab_checkout').addClass('selected');
} else {
$('#tab_home').addClass('selected');
}
}

так же эта ошибка проявляется везде где есть $(document).ready(function() { и еще где $('#review .pagination a').live('click', function() {

В остальных же браузерах работает все нормально...

Страница с ошибками http://www.premierdetect.ru/metalloiskateli/minelab/x-terra-505/ и так все товары. Может кто помочь исправить кроссбраузерность?

Всроде все нормально прописано:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

JS подключены, в head след:


<link rel="stylesheet" type="text/css" href="catalog/view/theme/tool_shop/stylesheet/stylesheet.css" />
<!--[if IE 6]>
<link rel="stylesheet" type="text/css" href="catalog/view/theme/tool_shop/stylesheet/ie6.css" />
<![endif]-->
<script type="text/javascript" src="catalog/view/javascript/jquery/jquery-1.5.min.js"></script>
<script type="text/javascript" src="catalog/view/javascript/jquery/thickbox/thickbox-compressed.js"></script>
<link rel="stylesheet" type="text/css" href="catalog/view/javascript/jquery/thickbox/thickbox.css" />
<script type="text/javascript" src="catalog/view/javascript/jquery/tab.js"></script>
<script type="text/javascript" src="catalog/view/theme/tool_shop/js/boxOver.js"></script>
H
На сайте с 13.06.2011
Offline
9
#1

Если проблема проявляется только в IE8, то попробуйте такое решение :)


<head>
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
...
<title>...</title>
<meta...
....
<!--[if lte IE 8]>
<script src="http://ie7-js.googlecode.com/svn/version/2.0(beta3)/IE8.js" type="text/javascript"></script>
<![endif]-->
</head>
Слово не воробей. Все не воробей, кроме воробья!
S
На сайте с 26.10.2007
Offline
74
#2

Haubergeon, к сожалению нормально отображается только в 6, проверил онлайн сервисом. Но подстановка IE=6 или IE=EmulateIE6 не помогла.

Может кто поможет за :2cents: ?

B
На сайте с 25.02.2009
Offline
68
#3
Strongest:

route = getURLVar('route');

А что route глобальная переменная? Судя по коду - нет, надо перед всеми переменными поставить var для декларации их в объявленной функции на событие ready. Поправьте код и посмотрите результат

Бесплатная CMS LitePublisher это блог, вики, тикет система, голосование (http://litepublisher.ru/) на высокой скорости с минимум памяти
S
На сайте с 26.10.2007
Offline
74
#4

blogolet, Прописал

var route = getURLVar('route');

результат = 0, т.е. все как и раньше.

Haubergeon, подключил библиотеку, тоже не помогло, но её оставлю, спасибо.

H
На сайте с 13.06.2011
Offline
9
#5
Strongest:
Haubergeon, подключил библиотеку, тоже не помогло, но её оставлю, спасибо.

А вы сделали в точности как я писал (<meta> сразу за <head>)?

PS это мало что изменит конечно, но помнится когда-то сталкивался с подобной проблемой, перерыл инет, многие писали что не срабатывает если где-то в серединке, могу лишь предположить, что эта конструкция должна быть в первых n битах документа, или как-то так

S
На сайте с 26.10.2007
Offline
74
#6

Haubergeon, да именно так...

Однако тут http://demo.myopencart.ru/index.php?route=product/product&product_id=47 магазин на таком же движке и те же скрипты, отображается нормально.

Strongest добавил 14.06.2011 в 21:26

Всё разобрался, проблема была в кодировке сохраненного шаблона.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий