在我的网页中,我有一个jQuery UI按钮和菜单组合:
$("#changeTemplateMenuBtn").button().click(function() {
let menu = $('#template-node-type-menu');
menu.show().position({
my: 'left bottom',
at: 'left top',
of: this,
});
$(document).one('click', function() {
menu.hide();
});
return false;
});
预期的行为是,当点击changeTemplateMenuBtn
时,应显示template-node-type-menu
,当注册按钮外部时,菜单应隐藏。但是,我也有一个Sigma.js图表div;在按钮外部点击并在Sigma div外部按照预期隐藏菜单,但在按钮外部点击但在Sigma div内部不会隐藏按钮。我怀疑Sigma实例正在捕获点击并阻止它们到达$(document).one('click')
处理程序,但在阅读Sigma文档时,我不明白如何在适当的情况下通过这些点击事件,如果这确实是什么的发生。