使用django-debug-toolbar访问$(document).ready()中的jquery插件的问题

时间:2009-05-22 14:08:32

标签: jquery django jquery-plugins

我编写了自己的jquery插件,令人惊讶的是我无法在$(document).ready函数中访问它。

我写这个测试页面并且更加惊人:

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

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

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

我在firebug控制台中有4个不同的值。有人知道并且可以形容我是谁吗?主要问题 - 如何在$(function(){}中访问我的$ .anchor变量???

您的测试用例在http://movister.ru:5190/html/test.html

谢谢!

更新

我只是抓住了问题 - django-debug-toolbar。当我禁用它时,一切都会变好!

有谁知道如何在jquery和django-debug-toolbar之间建立友谊?

3 个答案:

答案 0 :(得分:2)

尝试

$.fn.anchor

刚刚测试了您的代码示例,两次结果都是相同的。但总的来说,并且为了将来扩展 $。fn ,因为它扩展了jQuery对象原型。当您执行 $。anchor 时,您只是扩展该对象的实例。

答案 1 :(得分:2)

我认为应该是:

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

修改

我也得到了同样的结果,和其他人一样。

答案 2 :(得分:0)

我通过切换到另一个分支 - alex's django_debug_toolbar来部分解决这个问题。

但是我认为它更丑陋,然后david cramer's django_debug_toolbar,我之前使用过,它包含了jQuery的这个问题。我希望将来能够将这个问题从alex's转移到dcramer的分支。