这是我对之前问题的跟进。
我需要动态地放置Bootstrap工具提示。为了做到这点,我需要知道触发工具提示的元素的位置(已经可以了),以及工具提示应该出现的宽度:
为了澄清,我的工具提示是动态生成的,然后插入内容中。如果它们太靠近屏幕左侧边缘,我需要将它们放在“右侧”而不是“顶部”。现在,我想获取工具提示的宽度,只有当它实际上要超出屏幕时才将它放在“右侧”。
谢谢您的提前帮助。
我需要动态地放置Bootstrap工具提示。为了做到这点,我需要知道触发工具提示的元素的位置(已经可以了),以及工具提示应该出现的宽度:
为了澄清,我的工具提示是动态生成的,然后插入内容中。如果它们太靠近屏幕左侧边缘,我需要将它们放在“右侧”而不是“顶部”。现在,我想获取工具提示的宽度,只有当它实际上要超出屏幕时才将它放在“右侧”。
$('body').tooltip({
delay: { show: 300, hide: 0 },
selector: '[rel=tooltip]:not([disabled])',
placement: function(tip, element) {
var offsetLeft = $(element).offset().left;
var offsetRight = ( $(window).width() - ( offsetLeft + $(element).outerWidth() ) );
// need help here: how to get the width of the current tooltip?
// currently returns "0" for all elements
var tooltipWidth = $(tip).outerWidth();
console.log(tooltipWidth);
if (offsetLeft < 220) {
return 'right';
}
if (offsetRight < 220) {
return 'left';
}
else {
return 'top';
}
}
});
谢谢您的提前帮助。