$(function(){
jQuery.fn.extend({
uploadPreview: function(opts) {}
})
})
这种写法在页面上调用$('.class').uploadPreview({})
会报错
请教各位大神 是为什么呢
要怎么写才不会报错呢
页面调用套个function试试
$(function(){ //代码});
写在里面试试
是可以的,但是这是为什么呢?
@小码农雯: 可以了嘛
@代码飞了: 可以 但是原理是为什么呢?
@小码农雯: 这样想,你想用这个方法,所以你要引用JQuery,
JQuery也是有规范的
用JQuery里面的方法时,你要让它识别这个方法。
就像,方法要写在类里面一样,不然离开类,他就报错一样。
所有的东西都有一个归属
@代码飞了: 但是要是不想要在页面上套用(function(){})的话有什么办法吗?要不然不可能用别人的插件的时候还想着要加个(function(){})在上面呀
@小码农雯: 也不是,有好多种写法,不要让他独立就好,不然他不识别
@代码飞了: 要么放到最后面引入。
看看浏览器调试工具里出现什么错误?
这样子的
@小码农雯: js 文件引用的顺序对吗?
@坤坤: 现在这样就是想让html加载完再加载js,是正确的,加载完jQuery了才加载这个
;(function($){
$.fn.extend({
uploadPreview: function(opts) {}
})
})(jQuery);
试试
谢谢,选择基本上解决了这个问题