Предотвращение ошибок jQuery - PullRequest
0 голосов
/ 07 февраля 2012

Я разработчик плагинов для Wordpress, и у меня просто быстрый вопрос относительно ошибок jQuery.

Мой плагин дает пользователю возможность создавать слайд-шоу на своем сайте, который включает в себя загрузку jQuery и его собственного скрипта. Все это делается правильно, используя правильную функциональность Wordpress и т. Д. Здесь нет проблем.

Однако часто другие плагины не используют правильную функциональность, что может привести к загрузке jQuery дважды на страницу, а иногда даже трижды. Другая проблема - это пользователи, которые сами возились с плагинами jQuery и, например, ссылались на несуществующую функцию, которая в результате выдает ошибку jQuery и разрушает функциональность моих плагинов (слайд-шоу).

Просто интересно, есть ли способ обойти это, чего я, возможно, не знаю. Можно ли заставить функцию игнорировать ошибки или что-то подобное? Это такая боль, пытаться объяснить пользователям, что сценарии плагинов не виноваты, а страдают из-за внешней ошибки. Устранение неполадок в этом также может быть чрезвычайно сложным, если пользователь вообще не обладает знаниями о Javascript или jQuery.

Прежде всего, это настоящая боль, с которой приходится иметь дело ежедневно. Несомненно, jQuery, загружаемый более одного раза, является самой распространенной ошибкой, и было бы неплохо попытаться как можно больше устранить ее, чтобы тратить меньше времени на устранение неполадок и больше времени на разработку.

Заранее спасибо.

Ответы [ 2 ]

1 голос
/ 07 февраля 2012

Нет способа преодолеть множественные нагрузки jQuery, каждая загрузка инициирует объект jQuery, таким образом удаляя любую функцию и свойства, которые вы расширили объект jQuery.

Просто попробуйте сказать им, что ...

Вы можете использовать window.onerror для обнаружения ошибок сценариев (не знаю, как это может вам помочь):

window.onerror = function myErrorHandler(errorMsg, url, lineNumber) { 
    // Code...
    };

window.onerror в MDN

0 голосов
/ 07 февраля 2012

Вы можете использовать:

try {}
catch {}

Если вы заставите весь сомнительный код запускаться в try {}, ошибки не должны останавливать другие сценарии.Это все равно не исправит двойную / тройную загрузку jQuery и / или неправильное использование плагинов ...

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