我希望当用户滚动页面到图表所在的div时才显示我的图表。
现在,图表会和页面一起加载,当我到达图表时,它已经被加载了。 我使用Chart.js制作此图表。 这是网站链接:
http://www.matteoschiatti.it/。 我在“skills”选项卡下方有图表。以下是我的技能部分:
<section id="skills" class="skills-section">
<div id="counter">
<canvas id="polarChart" height="100%"></canvas>
</div>
</section>
JS:
$(function() {
var oTop = $('#counter').offset().top - window.innerHeight;
var oBottom = $('#contact').offset().top - window.innerHeight;
var chartHidden = true;
$(window).scroll(function(){
var pTop = $('body').scrollTop();
if ((pTop > oTop) && (chartHidden)) {
chartHidden = false;
start_count();
} else if (pTop < oTop) {
chartHidden = true;
}
if ((pTop > oBottom)) {
chartHidden = true;
}
});
});
function start_count(){
var ctx = document.getElementById("polarChart").getContext('2d');
var myChart = new Chart(ctx, {
type: 'polarArea',
data: {
labels: ["Php", "Css", "Html", "Wordpress", "Magento", "Photoshop", "Web Analisis", "Seo"],
datasets: [{
backgroundColor: [
"#0066ff",
"#cc3333",
"#ffba02",
"#009966",
"#ff6600",
"#db01de",
"#00cc33",
"#00ccff"
],
data: [65, 85, 90, 95, 75, 75, 85, 85]
}]
}
});
}
'scroll'
事件吗?当滚动事件被触发时,使用提供的答案确定何时可见,然后绘制图表... - WhiteHat