如何向Snap.js移动面板添加destroy
方法?如果只是删除它设置的数据/参考,那么最好的方法是什么?
https://rawgit.com/jakiestfu/Snap.js/v2.0.0-rc1/src/snap.js
基本上我需要能够在jQuery Mobile page change重新初始化之前将其关闭 - 否则它只能在第一页上运行:
答案 0 :(得分:2)
以下代码克隆 Snap Panel ,将其置于当前页面之前,然后在pagecontainershow
上初始化。
$(document).on("pagecontainershow", function (e, data) {
var drawer = $(".snap-drawers").clone(); /* clone */
$(".snap-drawers").remove(); /* remove */
$(data.toPage).before(drawer); /* place it before page */
var snapper = new Snap({
element: $(data.toPage)[0] /* initialize it */
});
$('.open-panel')
.off("click") /* remove previous click listener */
.on("click", function () { /* re-bind click */
snapper.open('left');
});
$('.close')
.off("click") /* remove previous click listener */
.on('click', function () { /* re-bind click */
snapper.close();
});
});