如何禁用Bootstrap Tooltip?已通过自定义函数启用该组件
禁用Bootstrap Tooltip的方法
要禁用你已初始化的Bootstrap Tooltip,可根据需求选择以下几种方式:
1. 单个Tooltip禁用/销毁
如果需要针对单个Tooltip操作,你可以在初始化时将实例保存到元素的自定义属性中,后续调用对应方法:
// 修改初始化代码,保存实例引用 function activateTooltip() { const toolTips = document.querySelectorAll('.tooltip'); toolTips.forEach(t => { const tooltipInstance = new bootstrap.Tooltip(t); // 将实例绑定到元素上,方便后续调用 t._tooltip = tooltipInstance; }); } // 临时禁用(后续可通过enable()重新启用) document.querySelector('.tooltip')._tooltip.disable(); // 彻底销毁(清除实例及相关DOM、事件绑定) document.querySelector('.tooltip')._tooltip.dispose();
2. 批量处理所有Tooltip
如果要一次性处理所有已初始化的Tooltip,可遍历元素并执行操作:
// 批量临时禁用 document.querySelectorAll('.tooltip').forEach(t => { if (t._tooltip) { t._tooltip.disable(); } }); // 批量彻底销毁 document.querySelectorAll('.tooltip').forEach(t => { if (t._tooltip) { t._tooltip.dispose(); // 销毁后清除实例引用 delete t._tooltip; } });
3. 初始化时设置禁用状态
如果希望某些Tooltip默认不启用,可在初始化阶段配置disabled选项:
new bootstrap.Tooltip(t, { disabled: true });
区别说明:
disable()只是关闭Tooltip的触发功能,实例和DOM元素仍保留;dispose()会完全销毁实例,清除相关事件监听与DOM修改,无法再直接恢复。
内容的提问来源于stack exchange,提问作者Henrique P. Lima
相关产品推荐
相关产品推荐

