javascript似乎并没有在if语句中创建假圈,else echo。我写错了顺序的JavaScript?我知道它不是PHP,因为正确的div显示在源代码中。javascript似乎并没有创建假圈
</style>
<script>
window.onload = function() {
//uetr circle
var canvas = document.getElementById("Canvas");
var context = canvas.getContext("2d");
var centerX = canvas.width/2;
var centerY = canvas.height/2;
var radius = 70;
context.beginPath();
context.arc(centerX, centerY, radius, 0, 2 * Math.PI, false);
context.fillStyle = "#00FF7F";
context.fill();
context.lineWidth = 5;
context.strokeStyle = "black";
context.stroke();
//false circle
var canvas = document.getElementById("Canvas1");
var context = canvas.getContext("2d");
var centerX = canvas.width/2;
var centerY = canvas.height/2;
var radius = 70;
context.beginPath();
context.arc(centerX, centerY, radius, 0, 2 * Math.PI, false);
context.fillStyle = "#B0171F";
context.fill();
context.lineWidth = 5;
context.strokeStyle = "black";
context.stroke();
};
</script>
</head>
<body>
<?php
$visible = true;
if($visible){
echo "<div id='unhidden'><canvas id='Canvas' width='578' height='200'></canvas></div>";
}
else{
echo "<div id='hidden'><canvas id='Canvas1' width='578' height='200'></canvas></div>";
}
?>
</body>
</html>
在你的if语句,你的画布对各行不同的ID - 我第一个想到的应该是'Canvas1 '以匹配第二个和javascript参考。 – andrewsi