This commit is contained in:
yumoqing 2024-07-12 08:24:53 +08:00
parent 4fc8516c73
commit 48982ac6d9
2 changed files with 17 additions and 7 deletions

View File

@ -459,6 +459,8 @@ bricks.App = class extends bricks.Layout {
this.session_id = null; this.session_id = null;
this.tooltip = new bricks.Tooltip({otext:'test',i18n:true, wrap:true}); this.tooltip = new bricks.Tooltip({otext:'test',i18n:true, wrap:true});
this.add_widget(this.tooltip); this.add_widget(this.tooltip);
this._Width = this.dom_element.offsetWidth;
this._Height = this.dom_element.offsetHeight;
} }
create(){ create(){
this.dom_element = document.getElementsByTagName('body')[0]; this.dom_element = document.getElementsByTagName('body')[0];

View File

@ -383,18 +383,26 @@ bricks.Tooltip = class extends bricks.Text {
this.set_otext(otext); this.set_otext(otext);
this.set_style('zIndex', 999999999); this.set_style('zIndex', 999999999);
this.set_style('display', 'block'); this.set_style('display', 'block');
var ex,ey;
var x,y; var x,y;
x = event.clientX; var xsize = bricks.Body.dom_element.clientWidth;
y = event.clientY; var ysize = bricks.Body.dom_element.clientHeight;
if (x + this.dom_element.offsetWidth > bricks.Body.dom_element.clientWidth){ ex = event.clientX;
x = bricks.Body.dom_element.clientWidth - this.dom_element.offsetWidth; ey = event.clientY;
var mxs = this.dom_element.offsetWidth;
var mys = this.dom_element.offsetHeight;
if (ex < (xsize / 2)) {
x = ex + bricks.app.charsize;
} else {
x = ex - mxs - bricks.app.charsize;
} }
if (y + this.dom_element.offsetHeight > bricks.Body.dom_element.clientHeight){ if (ey < (ysize / 2)) {
y = bricks.Body.dom_element.clientHeight - this.dom_element.offsetHeight; y = ey + bricks.app.charsize;
} else {
x = ey - mys - bricks.app.charsize;
} }
this.set_style('left', x + 'px'); this.set_style('left', x + 'px');
this.set_style('top', y + 'px'); this.set_style('top', y + 'px');
console.log('moveover event happen');
} }
hide(){ hide(){
console.log('moveout event happen'); console.log('moveout event happen');