Необработанное исключение: «Не удалось преобразовать аргумент JavaScript» nsresult: «0x80570009 (NS_ERROR_XPC_BAD_CONVERT_JS)« строка 150 » - PullRequest
0 голосов
/ 07 декабря 2010

Я работаю над проектом с открытым исходным кодом, частью которого я называю jQuery.Я пытаюсь избавиться от исключения, которое заставляет библиотеку частично работать в Firefox и полностью умирает в chrome:

необработанное исключение: [Исключение ... "Не удалось преобразовать аргумент JavaScript" nsresult:Расположение "0x80570009 (NS_ERROR_XPC_BAD_CONVERT_JS)": данные "JS frame :: http://dev.johnhamelink.com/jquery/jquewy/latest.js :: anonymous :: line 150": нет]

Я пытался отладить егопросто не могу понять, почему это создает такую ​​ошибку.Любая помощь будет высоко ценится!

Редактировать: забыл упомянуть, вы можете просмотреть код здесь: http://dev.johnhamelink.com/jquery/jquery/

Джон.

Ответы [ 2 ]

3 голосов
/ 07 декабря 2010

Поэтому я установил точку останова в Firebug в первой строке после объявления функции addEvent, чтобы посмотреть, что происходит.Я добавил часы для элемента, типа и обратного вызова.

  • element = объект окна dom
  • type = "load"
  • callback = null

Проблема в том, что вы пытаетесь установитьчто-то для нуля, который не может быть установлен в нуль.

Так что вам нужно добавить простую проверку на ноль в методе addEvent.

addEvent: function(element, type, callback){
    if(!callback) return;
    if(element.addEventListener) element.addEventListener(type, callback, false);
    else if(element.attachEvent) element.attachEvent('on'+type, callback);
} 
1 голос
/ 07 декабря 2010

Здесь произошла приятная ошибка в технологии. Кто-то скопировал и вставил неправильно.

else if(element.attachEvent) element.attachEvent('on'+element, callback);

Должно быть 'on'+type, а не 'on'+element.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...