<script>
Chart.defaults.pointHitDetectionRadius = 1;
- var getOrCreateTooltip = function() {
+ var getOrCreateTooltip = function(chart) {
var tooltipEl = document.getElementById('chartjs-tooltip');
if (!tooltipEl) {
tooltipEl = document.createElement('div');
tooltipEl.id = 'chartjs-tooltip';
tooltipEl.innerHTML = '<table></table>';
- this._chart.canvas.parentNode.appendChild(tooltipEl);
+ chart.canvas.parentNode.appendChild(tooltipEl);
}
return tooltipEl;
};
- var customTooltips = function(tooltip) {
+ var customTooltips = function(context) {
// Tooltip Element
- var tooltipEl = getOrCreateTooltip();
+ var chart = context.chart;
+ var tooltipEl = getOrCreateTooltip(chart);
// Hide if no tooltip
+ var tooltip = context.tooltip;
if (tooltip.opacity === 0) {
tooltipEl.style.opacity = 0;
return;
tableRoot.innerHTML = innerHtml;
}
- var positionY = this._chart.canvas.offsetTop;
- var positionX = this._chart.canvas.offsetLeft;
+ var positionY = chart.canvas.offsetTop;
+ var positionX = chart.canvas.offsetLeft;
// Display, position, and set styles for font
tooltipEl.style.opacity = 1;
tooltipEl.style.left = positionX + tooltip.caretX + 'px';
tooltipEl.style.top = positionY + tooltip.caretY + 'px';
- tooltipEl.style.font = tooltip.bodyFont.string;
+ tooltipEl.style.font = tooltip.options.bodyFont.string;
tooltipEl.style.padding = tooltip.yPadding + 'px ' + tooltip.xPadding + 'px';
};
</div>
<script>
- Chart.defaults.plugins.tooltip.custom = function(tooltip) {
+ Chart.defaults.plugins.tooltip.custom = function(context) {
// Tooltip Element
+ var tooltip = context.tooltip;
var tooltipEl = document.getElementById('chartjs-tooltip');
// Hide if no tooltip
tableRoot.innerHTML = innerHtml;
}
- var positionY = this._chart.canvas.offsetTop;
- var positionX = this._chart.canvas.offsetLeft;
+ var chart = context.chart;
+ var positionY = chart.canvas.offsetTop;
+ var positionX = chart.canvas.offsetLeft;
// Display, position, and set styles for font
tooltipEl.style.opacity = 1;
tooltipEl.style.left = positionX + tooltip.caretX + 'px';
tooltipEl.style.top = positionY + tooltip.caretY + 'px';
- tooltipEl.style.font = tooltip.bodyFont.string;
+ tooltipEl.style.font = tooltip.options.bodyFont.string;
tooltipEl.style.padding = tooltip.yPadding + 'px ' + tooltip.xPadding + 'px';
};
<div class="chartjs-tooltip" id="tooltip-1"></div>
</div>
<script>
- var customTooltips = function(tooltip) {
- $(this._chart.canvas).css('cursor', 'pointer');
+ var customTooltips = function(context) {
+ var chart = context.chart;
+ $(chart.canvas).css('cursor', 'pointer');
- var positionY = this._chart.canvas.offsetTop;
- var positionX = this._chart.canvas.offsetLeft;
+ var positionY = chart.canvas.offsetTop;
+ var positionX = chart.canvas.offsetLeft;
$('.chartjs-tooltip').css({
opacity: 0,
});
+ var tooltip = context.tooltip;
if (!tooltip || !tooltip.opacity) {
return;
}