我很难弄清楚程序失败的原因。我正在编写一个生成画布的代码生成器,但我的专长是使用常规编译语言,而不是 javascript、canvas 或 web。
我在 Dreamweaver 中对一些代码进行原型设计,碰巧在第一行之前不小心放了一个问号。据我了解,问号使标头无效,并允许浏览器以怪癖模式运行。
当我发现无效的标头时,我删除了问号,我的工作应用程序开始失败。我一直在简化代码并提取一些东西,试图找出无效的代码,但我只剩下不到 30 行,找不到它,我可以提取的东西很少,但仍然完成了基本操作 -在画布上放置一个 SELECT 列表。
当此代码在大多数浏览器中运行时,它会一直工作,直到您删除文件顶部的问号。当它失败时,文本“对齐我”出现在页面中间,并且选择选项组合框放置在页面原点。有人可以告诉我代码有什么问题吗?
*<!doctype html>
<html>
<head>
<form id='h1'; style='position:relative'>
<div id='d1' style="position:absolute; top:0; left:0; z-index:1">
<canvas id="c1" width="310" height="300" style="border:1px solid #d3d3d3">
Your browser does not support the HTML5 canvas tag.
</canvas>
</div>
<select id='s1' style='position:absolute; z-index:2'>
<option value='Please select'>Please select</option>
</select>
</form>
</head>
<body>
<script type="text/javascript">
var can=document.getElementById("c1");
var ctx = can.getContext("2d");
ctx.font = 'bold 18px Arial, Helvetica, sans-serif';;
ctx.textAlign='right';
ctx.fillStyle ='#CCC';
ctx.fillText("Align Me", 130, 160);
var ele = document.getElementById('s1');
ele.style.top = 140;
ele.style.left= 140;
</script>
</body>
</html>