我找到了一个名为Clippy.js的简洁小JS库,它允许您在浏览器中实现Microsoft Word的旧虚拟助手。在玩了一段时间之后,我意识到文本气球有一个setTimeout()
方法和一个时间延迟导致它消失。
hide:function (fast) {
if (fast) {
this._balloon.hide();
return;
}
this._hiding = window.setTimeout($.proxy(this._finishHideBalloon, this), this.CLOSE_BALLOON_DELAY);
},
_finishHideBalloon:function () {
if (this._active) return;
this._balloon.hide();
this._hidden = true;
this._hiding = null;
},
我不想要那个。我希望当用户点击时气球消失。我尝试通过将this._hiding = ...
替换为:
var clickToHide = document.getElementsByClassName('clippy-balloon');
this._hiding = clickToHide.addEventListener('click', function(){$.proxy(this._finishHideBalloon, this)});
......但它所做的就是完全隐藏气球。为什么这不起作用?我如何实现我想要的功能?
答案 0 :(得分:1)
我认为延迟是由变量CLOSE_BALLOON_DELAY
引起的。
将this.CLOSE_BALLOON_DELAY
更改为0
应该可以解决问题。