2015-07-01 36 views

回答

2

既然你正在訪問的方法,jQuery對象

(function ($) { 
    $.urlHash = function() { 
     return document.URL.substr(document.URL.indexOf('#') + 1); 
    }; 
})(jQuery); 

的靜態方法當您添加的屬性$.fn它添加到jQuery對象的原型對象,所以你需要使用jQuery的實例訪問它的對象

+0

感謝您的解釋。 :) – Albert

1

刪除用於對象的fn

(function ($) { 
    $.urlHash = function(){ 
     return document.URL.substr(document.URL.indexOf('#') + 1); 
    }; 
})(jQuery); 
0

建議使用fn.extend函數來擴展jQuery對象,而不是直接(doc)。

然而,在你的情況下,你不想擴展jQuery對象(其用法可能看起來像$('selector').extendedFunction()),而是聲明一個上下文無關的函數。您決定將該函數附加到「jQuery名稱空間」($ vs $())是有效的,儘管有些奇怪。你也可以決定擴展任何其他的「命名空間」或者簡單地擴展全局命名空間。

相關問題