Javascript $(文档)存在一些范围问题。准备好了吗
不读“我的甜甜圈”有问题。这是控制台中提供的错误:UncaughtTypeError:无法读取未定义用户的属性“forEach”。js?body=1:50Javascript $(文档)存在一些范围问题。准备好了吗,javascript,scoping,chart.js,Javascript,Scoping,Chart.js,不读“我的甜甜圈”有问题。这是控制台中提供的错误:UncaughtTypeError:无法读取未定义用户的属性“forEach”。js?body=1:50 但是,当我在另一个文件上测试它,并将脚本放在页面底部,而没有$(文档)。ready或window onload可以完美地工作。这里是一个小提琴,用于提供的代码,但没有错误,您可以尝试使用它来复制吗。错误指的是data.forEach还是myDoughnut.segments.forEach $(document).ready(function
但是,当我在另一个文件上测试它,并将脚本放在页面底部,而没有$(文档)。ready或window onload可以完美地工作。这里是一个小提琴,用于提供的代码,但没有错误,您可以尝试使用它来复制吗。错误指的是data.forEach还是myDoughnut.segments.forEach
$(document).ready(function(){
var data = [
{
value: 30,
color:"#F7464A",
highlight: "#FF5A5E",
label: "Red"
},
{
value: 30,
color: "#46BFBD",
highlight: "#5AD3D1",
label: "Green"
},
{
value: 30,
color: "#FDB45C",
opacity: 30,
highlight: "#FFC870",
label: "Yellow"
}
];
var ctx = $('#chart-area').get(0).getContext("2d");
var myDoughnut = new Chart(ctx).Doughnut(data, {
responsive : true,
animateRotate: true,
animateScale: false,
percentageInnerCutout: 70,
animationEasing : "easeInOutQuart"
});
function updateData() {
data.forEach(function(entry) {
entry.value += 10;
});
}
document.getElementById("button").onclick = function() {
updateData(); // for demo only
var index = 0;
myDoughnut.segments.forEach(function(segment) {
segment.value = data[index++].value;
});
myDoughnut.update();
};
});