刚开始使用SlickGrid,它似乎并没有像普通的 jquery 小部件/插件那样启动自己,您可以通过执行 $(element).slickgrid() 来访问附加到元素的实例。
有没有办法获取现有实例,而在创建它时不会明显地保留它?仔细查看代码,它看起来不像,但不确定其他人是否遇到过这个问题。
不完全确定他们为什么依赖 jquery 但决定进行自定义初始化。
可以像将它包装在 jqueryui 小部件中一样简单。
刚开始使用SlickGrid,它似乎并没有像普通的 jquery 小部件/插件那样启动自己,您可以通过执行 $(element).slickgrid() 来访问附加到元素的实例。
有没有办法获取现有实例,而在创建它时不会明显地保留它?仔细查看代码,它看起来不像,但不确定其他人是否遇到过这个问题。
不完全确定他们为什么依赖 jquery 但决定进行自定义初始化。
可以像将它包装在 jqueryui 小部件中一样简单。
您总是可以使用 jQuery 的数据函数来保存对光滑网格实例的引用。
例如:
var grid = new Slick.Grid(container,data,columns,options);
$(element).data('slickgrid', grid);
您可以使用以下方式访问它:
$(element).data('slickgrid');
我觉得这类问题有点意思。仅仅因为某些东西使用了 jQuery 库,它不会自动使其成为 jQuery 插件或 jQueryUI 小部件。SlickGrid 两者都不是,这就是它不遵循他们的设计约定或 API 的原因。
撇开那次小小的咆哮不谈,马克的回答是正确的。如果出于某种原因您想将实例变量与 DOM 元素一起存储,您可以使用 $(element).data() 轻松做到这一点。