Подтвердить что ты не робот

Инструменты разработчика Chrome приостанавливают инициализацию jQuery 1.7

Инструменты разработчика Chrome - отличный набор инструментов, которые я люблю использовать. К сожалению, в последнее время я столкнулся с очень странной проблемой, когда обновляю страницу, сохраняя окно инструментов разработчика открытым: Chrome приостанавливает выполнение javascript и указывает на строку, указанную ниже.

try {
        // This should fail with an exception
        // Gecko does not error, returns false instead
        matches.call(document.documentElement, "[test!='']:sizzle"); // this is where it breaks

} catch (pseudoError) {
    pseudoWorks = true;
}

Исключение приводит к приостановке script, несмотря на то, что само исключение расположено внутри блока try-catch. Есть ли способ изменить это поведение? Или есть что-то, что я пропустил?

4b9b3361

Ответ 1

Возможно, это известная ошибка, проверьте это: http://bugs.jquery.com/ticket/7535. Я нашел это решение там, надеюсь, это поможет:

 try {
// This should fail with an exception
// Gecko does not error, returns false instead
// <orig. $jquery-1.5:>
// matches.call( document.documentElement, "[test!='']:sizzle" );
// <proposal to Ticket #7535, 2011-03-24:>
  if( ! html.mozMatchesSelector || document.currentScript ){
    matches.call( html, "[test!='']:sizzle" );
  }
//else{
// /*FF lt 4*/
//}


} catch( pseudoError ) {
    pseudoWorks = true;
  }
  // <testing only>
  // alert('MalformedSelectorException thrown: ' + pseudoWorks );

Ответ 2

Я только что решил эту проблему (в моем случае, может быть, иная). Я случайно нажал кнопку "Пауза на исключениях" в хром-консоли. Это: https://developers.google.com/chrome-developer-tools/docs/scripts-breakpoints#js_exceptions

Здесь расположено расположение этой маленькой, простой в пропуске кнопки "Пауза на исключениях" и трех ее переключающих состояний:

Image showing small "Pause on Exceptions" button

Ответ 3

Если кто-то ищет

div.querySelectorAll("*,:x");

следует перенаправить сюда.

Ответ 4

Если вы используете Chrome, сделайте следующее:

Нажмите значок "Настройки" в инспекторе (cog). В общем, есть кнопка под названием "Управление черной шкалой..."

Вы можете использовать это, чтобы игнорировать определенные сценарии от оценки в отладчике. Здесь простое регулярное выражение для перехвата jQuery. /jquery(.*)\.js$

Ответ 5

Нашел этот вопрос, ища его, связанный с Safari, поэтому я думаю, что ответ может быть полезным:

В Safari Web Inspector это можно достичь аналогичным образом, перейдя на вкладку Breakpoints (ctrl-7). Отмените выбор "All Exceptions" и выберите "All Uncaught Exceptions".