Mootools и Firefox 4 проблема - PullRequest
       26

Mootools и Firefox 4 проблема

1 голос
/ 05 июня 2011

Я работал над сайтом несколько месяцев назад, и я использовал mootools menumatic с одного из сайтов ресурсов в Интернете. Firefox 4 в то время еще был бета, и я не тестировал в нем свое меню, и в настоящее время я тестировал в Firefox 4и удивительно, что скрипт не работал. Где-то может быть проблема. Заранее спасибо. введите описание ссылки здесь

1 Ответ

2 голосов
/ 05 июня 2011

вы используете mootools 1.2.0 - просто чтобы мы поняли кое-что здесь, и я повторяюсь но вы идете ...

  1. mootools 1.2.0 уже 3 года - http://ajaxian.com/archives/mootools-12-released - 13 июня 2008 года. На момент выпуска Firefox 4 даже не была концепцией дизайна.

  2. mootools 1.2 полагался на обнаружение функций - прочитайте предыдущий поток, связанный выше - и на устаревший getBoxObjectFor, чтобы определить, был ли вы в браузере на основе гекконов, таком как FireFox. Запуск этого небольшого теста в FF4 на вашем сайте:

(через консоль firebug):

JSON.encode(Browser.Engine);
"{"name":"unknown","version":"","unknown":true}"

Суть в том, что меню работает, но оно создает исключение javascript при попытке использовать определенные установщики / получатели стилей, которые не будут работать из-за того, что среда не понимает версию браузера. Скорее всего, это НЕ будет единственной ошибкой, но вам нужно будет написать несколько обширных тестов для выявления всех проблем, так как многие из них могут привести к другой / нежелательной функциональности, а не к явным исключениям.

Короче говоря, ответ, который вы, возможно, не захотите услышать: обновите ваши mootools до ПОСТ, по крайней мере, 1.3.5.1 или, в идеале, 1.3.2 - вам может понадобиться использовать версию режима совместимости, чтобы ваши старые плагины продолжать работать.

Другие критические изменения: Function.bind раньше принимал аргументы bindObj, [args] и теперь изначально определяется как bindObj, arg1,... argn

И, наконец, вы можете принять некоторые ответы, 50% слишком мало

...