2009-05-22 28 views
1

我写了自己的jquery插件,很奇怪我在$(document).ready函数内部没有访问它。

我写这篇文章testpage,是惊异:

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

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

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

心中已经得到了在萤火控制台4个complettely不同的值。有人知道,可以形容我吗?而主要的问题 - 我怎么能有在$访问我的$ .anchor变量(函数(){} ...

Thу测试用例是这里http://movister.ru:5190/html/test.html

感谢

UPDATE:

我正好赶上了问题 - !Django的调试工具栏里当我禁用它,万物变得确定

有谁知道如何使jQuery的之间的友谊和Django的调试toolba R'

回答

2

尝试

$.fn.anchor 

只是测试您的代码示例,并且这两个时间的结果是相同的。但由于它扩展了jQuery对象的原型,所以一般和将来都会扩展$ .fn。当你只做$ .anchor你只是扩展该对象的实例。

+0

不,同样的问题 – ramusus 2009-05-22 14:18:51

+0

它给了我两次相同的两个值。我没有解决问题。 – 2009-05-22 14:21:12

2

我认为应该是:

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

编辑:

我得到同样的结果两次都太,同其他人。