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

"element.dispatchEvent не является функцией" js ошибка, попавшая в firebug FF3.0

Я получаю следующую ошибку при загрузке моей индексной страницы в FF3.0. Извините, я не могу вставить script здесь, так как это 2030 строк кода.

element.dispatchEvent не является функцией

При расширении он дает мне ниже вещей,

fire()() prototype.js? 1 (строка 3972)

_methodized()() prototype.js? 1 (строка 246)

fireContentLoadedEvent() prototype.js? 1 (строка 4006)

[Break this this error] element.dispatchEvent(событие);

element.dispatchEvent(event); находится в строке 3972 prototype.js. Я включаю prototype.js вместе с 10s других js файлов на моей индексной странице.

Кто-нибудь сталкивался с такой ошибкой? Пожалуйста, объясните мне, почему эта ошибка появляется.

4b9b3361

Ответ 1

Вы используете jquery и прототип на одной странице случайно?

Если это так, используйте режим jquery noConflict, иначе вы переписываете прототипы $function.

Режим noConflict активируется следующим образом:

<script src="jquery.js"></script>
<script>jQuery.noConflict();</script>

Примечание: при этом переменная знака доллара больше не представляет объект jQuery. Чтобы не переписывать весь ваш код jQuery, вы можете использовать этот небольшой трюк, чтобы создать область значков доллара для jQuery:

jQuery(function ($) {
    // The dollar sign will equal jQuery in this scope
});

// Out here, the dollar sign still equals Prototype

Ответ 2

После того, как тег JQuery script добавит

<script>jQuery.noConflict();</script>

чтобы избежать конфликта между прототипом и JQuery.

Ответ 3

Вы должны добавить

<script>jQuery.noConflict();</script>

после

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>

Ответ 4

Измените следующую строку

$(document).ready(function() {

Для

jQuery.noConflict();
jQuery(document).ready(function($) {

Ответ 5

проверьте это, вызвав jQuery библиотеки после noconflict.js или это вызов более чем один раз библиотеки jquery после noconflict.js