Проблема с доступом к плагину jquery внутри $ (document) .ready () с помощью django-debug-toolbar - PullRequest
1 голос
/ 22 мая 2009

Я написал свой собственный плагин jquery и удивительно, что у меня нет доступа к нему внутри функции $ (document) .ready.

Я пишу эту тестовую страницу и удивительно больше:

    /**
     * jQuery anchor plugin
     */
    (function($) {
        $.anchor = {
            hashTrim: /^.*#/,
        }
    })(jQuery);

    console.log($.ajax);
    console.log($.anchor);

    $(function() {
        console.log($.ajax);
        console.log($.anchor);
    });

Я получил 4 совершенно разных значения в консоли firebug. Кто-нибудь знает и может описать меня, почему это так? И главный вопрос - как я могу получить доступ к моей переменной $ .anchor внутри $ (function () {} ???

Тестовый пример здесь http://movister.ru:5190/html/test.html

Спасибо!

UPDATE:

Я просто уловил проблему - django-debug-toolbar. Когда я его отключил, все стало хорошо!

Кто-нибудь знает, как дружить между jquery и django-debug-toolbar?

Ответы [ 3 ]

2 голосов
/ 22 мая 2009

Я думаю, что должно быть:

(function($) {
    $.fn.anchor = {
        hashTrim: /^.*#/,
    }
})(jQuery);

Edit:

Я получаю один и тот же результат оба раза, как и другие парни.

2 голосов
/ 22 мая 2009

попробуй

$.fn.anchor

Только что проверил ваш пример кода, и оба раза результат идентичен. Но в целом и на будущее расширение $. Fn связано с тем, что оно расширяет прототип объекта jQuery. Когда вы просто делаете $. Anchor , вы просто расширяете этот экземпляр объекта.

0 голосов
/ 03 июня 2009

Я частично решаю эту проблему, переключившись на другой форк - alex's django_debug_toolbar .

Но я думаю, что это более уродливо, чем django_debug_toolbar Дэвида Крамера, который я использовал ранее и который содержит эту проблему с jQuery. Я надеюсь в будущем перенести функциональность, чтобы избежать этой проблемы, от алкаша к вилке дкрамера.

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