有没有办法手动打开关闭jquery ui工具提示?我只是希望它能够对点击事件进行开启/关闭。您可以取消绑定所有的鼠标事件,并在调用.tooltip(‘open’)时重新绑定它们,即使不应该初始化或设置事件imo,因为如果您尝试在不初始化的情况下运行.tooltip(‘open’),那么它会抱怨大声说,没有被初始化。
解决方法
jltwoo,我可以建议使用两个不同的布尔开关来启用自动打开和自动关闭?有了这个修改你的代码将如下所示:
- (function( $ ) {
- $.widget( "custom.tooltipX",$.ui.tooltip,{
- options: {
- autoShow: true,autoHide: true
- },_create: function() {
- this._super();
- if(!this.options.autoShow){
- this._off(this.element,"mouSEOver focusin");
- }
- },_open: function( event,target,content ) {
- this._superApply(arguments);
- if(!this.options.autoHide){
- this._off(target,"mouseleave focusout");
- }
- }
- });
- }( jQuery ) );
这样,初始化工具提示为:
- $(someDOM).tooltipX({ autoHide:false });
如果要手动控制打开和关闭操作,可以简单地使用:
- $(someDOM).tooltipX({ autoShow:false,autoHide:false });