f:browser не определен, а .fancybox не является функцией

Хорошо, я установил некоторые изображения, чтобы они открывались с помощью fancybox. Раньше работало нормально. Теперь я получаю 2 ошибки.

введите здесь описание изображения

Что я изменил, я не уверен. Я читал в Интернете, что вы обычно получаете .fancybox не является сообщением об ошибке функции, когда у вас есть несколько включений библиотеки jquery. Насколько я знаю, у меня есть только один.

Вот пример того, где вы можете получить это сообщение об ошибке:

(www).thecardb.com/abarth/1000-Bialbero/1960/0/85

Я немного переписал URL-адрес, возможно ли, что это вызывает проблему?

RewriteEngine on
RewriteBase /
DirectorySlash Off

# remove trailing slash
RewriteRule ^(.*)\/(\?.*)?$ $1$2 [R=301,L]

# Redirect non-www urls to www
RewriteCond %{HTTP_HOST} ^thecardb\.com [NC]
RewriteRule (.*) http://www.thecardb.com/$1 [R=301,L]

# Don't match real existing files so CSS, scripts, images aren't rewritten
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d

# Match the first two groups before / and send them to the query string
RewriteRule ^([A-Za-z0-9-]+)?$ car.php?model_make_id=$1 [L]

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([A-Za-z0-9-]+)/([A-Za-z0-9-._]+)?$ car.php?model_make_id=$1&model_name=$2 [L]

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([A-Za-z0-9-]+)/([A-Za-z0-9-._]+)/([0-9]+)?$ car.php?model_make_id=$1&model_name=$2&model_year=$3 [L]

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([A-Za-z0-9-]+)/([A-Za-z0-9-._]+)/([0-9]+)/([A-Za-z0-9-._]+)?$ car.php?model_make_id=$1&model_name=$2&model_year=$3&model_trim=$4 [L]

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([A-Za-z0-9-]+)/([A-Za-z0-9-._]+)/([0-9]+)/([A-Za-z0-9-._]+)/([0-9]+)?$ car.php?model_make_id=$1&model_name=$2&model_year=$3&model_trim=$4&model_id=$5 [L]

Я потерялся! Любая помощь приветствуется.


person AJFMEDIA    schedule 16.01.2013    source источник
comment
Вы включаете jQuery из CDN? Если да, то какой URL вы используете? Если вы указываете и не указываете версию, ваш jQuery обновлен до более новой версии, которая не включает метод $.browser, который, по-видимому, использует ваша версия fancybox.   -  person Kevin B    schedule 16.01.2013
comment
Я включаю его из этого URL-адреса code.jquery.com/jquery-latest.js ??   -  person AJFMEDIA    schedule 16.01.2013
comment
impressivewebs.com/linking-to-jquery — всегда используйте определенную версию. jquery-latest.js не минимизируется и не кэшируется.   -  person Andreas    schedule 16.01.2013
comment
stackoverflow.com/q/14344289/1055987   -  person JFK    schedule 16.01.2013


Ответы (2)


Недавно jQuery был обновлен до версии 1.9, в которой удалено большинство, если не все устаревшие методы. $.browser был одним из них. Fancybox использует $.browser, поэтому вы не можете использовать jQuery 1.9 и вашу версию fancybox без установленного подключаемого модуля миграции. Либо понизьте версию jQuery, либо обновите fancybox, либо включите подключаемый модуль миграции.

Дополнительная информация здесь: http://blog.jquery.com/2013/01/15/jquery-1-9-final-jquery-2-0-beta-migrate-final-released/

Также всегда следует указывать номер версии.

http://code.jquery.com/jquery-1.8.3.min.js

person Kevin B    schedule 16.01.2013
comment
Мой ответ обновлен stackoverflow.com/a/14344290/1055987... Выпущен Fancybox v2.1.4, который отлично работает с jQuery v1.9.0 (без скрипта миграции) - person JFK; 16.01.2013
comment
Здорово! Большое спасибо, ссылка на блог Кевина помогает мне, и это очень работает для меня. - person Dhaval; 18.01.2013

Вам нужно изменить код:

Находить:

$.browser.msie

Замените это на:

navigator.userAgent.match(/msie/i)
person Nilu Khair    schedule 13.03.2015