【发布时间】:2016-01-22 13:29:55
【问题描述】:
首先,我是一个真正的 html 新手(实际上是编程),我是法国人,所以请原谅我的英语。 好吧,我正在尝试建立一个包含多个 html 页面的网站,我希望所有页面的背景都成为噪音发生器:
function noise(ctx) {
var w = ctx.canvas.width,
h = ctx.canvas.height,
idata = ctx.createImageData(w, h), // create image data
buffer32 = new Uint32Array(idata.data.buffer), // get 32-bit buffer
len = buffer32.length,
i = 0;
for(; i < len;)
buffer32[i++] = ((255 * Math.random())|0) << 24; // alter alpha channel
ctx.putImageData(idata, 0, 0);
}
http://jsfiddle.net/AbdiasSoftware/dEya9/
我设法使它与第一页上的 id 元素一起工作,但它不会显示在任何其他页面上。我知道一个 id 不应该被多次使用,但我找不到让这个背景一直工作的方法。
如果您需要更高的精度,请告诉我。 谢谢
【问题讨论】:
-
由于您已经设置了
<canvas>动画,您可能希望将其转换为gif图像,然后,都使用此图像作为一般背景,并保存循环计算对于每一页。见codecartooning.tumblr.com/post/40840548952/… -
“我知道一个 id 不应该被多次使用”,只能在同一个页面上。如果您的意思是您认为您应该只在整个网站流程中使用相同的元素 ID,那么您就误解了该规则。您能否提供有关您网站结构的更多信息?
-
您好,感谢您的回答。我终于在一位实际上是编程老师的朋友的帮助下成功了。这不是身份问题。我们没有发现我犯了什么错误,但我们只是将第一页复制了几次并将其他页面的内容粘贴到副本中,现在它运行良好!
标签: javascript css html canvas