怎样开发支持多个实例的js插件?
尝试开发了几个插件,但都仅支持同一个页面中使用一次,否则会互相影响。
请教大家,如何开发支持一个页面中多个实例的js/jQuery插件?只要简单说明主要架构就可以。
谢谢!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
尝试开发了几个插件,但都仅支持同一个页面中使用一次,否则会互相影响。
请教大家,如何开发支持一个页面中多个实例的js/jQuery插件?只要简单说明主要架构就可以。
谢谢!
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(3)
要实例化多次使用构造函数的方式去实现是比较好得选择;
当页面需要使用时,通过new去实例化,而不需要时则不调用;
楼主说的只支持同一个页面使用,可能是抽离的不够好,
注意参数的抽离,构造函数中一定不要有引用页面dom元素或依赖当前页面的其他js变量,需要引用的地方应该作为参数去传递
大概可分以下几部分。
第一步通常是不变的内容,比如默认配置。即使有用户配置,也是通过
$.extend
来混合的。每个插件实例要把变化的内容放到原型上,这样各自的作用域和运行环境就隔离开了。
最后就是往 jq 上挂的时候注意的东西,注释里已经写了。
jqueryDom对象不一样,生成的实例不一样,不存在相互影响啊,没看出来