因此,我使用本教程为某些图表构建自定义右键菜单:https://www.sitepoint.com/building-custom-right-click-context-menu-javascript/
它工作得很好,但我对听众有一个问题。具体来说,当调用contextListeners和clickListeners函数时,在页面加载时会添加事件侦听器。但是,在我的应用程序中,我有一个按钮,它重新绘制这些图形并重新加载自定义右键单击菜单所附加的页面,每次都会创建新的侦听器。因此,如果我加载两个不同的图形,则与右键菜单相关联的函数被调用两次,如果我加载三次,则调用三次。这是继续被调用的函数,并不断添加监听器
function contextListener() {
document.addEventListener("contextmenu", function(e) {
taskItemInContext = clickInsideElement(e, taskItemClassName);
if (taskItemInContext) {
e.preventDefault();
toggleMenuOn();
positionMenu(e);
} else {
taskItemInContext = null;
toggleMenuOff();
}
});
}
在后来的一个函数中我尝试过:
document.removeEventListener("contextmenu", function(e) {
console.log("removed");
});
但这似乎没有办法。
答案 0 :(得分:1)
我不明白你的问题,但你可以试试这个:
for k, v in d.iteritems():
d[k] = v[::-1]
df = pd.DataFrame.from_dict(d, orient='index').T.set_index('Date').sort_index(1).sort_index().astype(float)