文档:mozSetImageElement() 方法
非标准:此特性未标准化。我们不建议在生产环境中使用非标准特性,因为它们浏览器支持有限,并且可能会更改或被移除。但是,在没有标准选项的特定情况下,它们可以是合适的替代方案。
Document.mozSetImageElement() 方法用于更改一个具有给定背景元素 ID 的背景所使用的元素。该方法会将指定元素设置为 CSS 背景。
语法
js
mozSetImageElement(imageElementId, imageElement)
参数
imageElementId-
一个字符串,指示一个已经通过
-moz-elementCSS 函数指定为背景图像的元素的名称。 imageElement-
与该 imageElement 字符串对应的,用作背景的新元素。指定
null以移除背景元素。
返回值
无(undefined)。
示例
此示例将在用户每次点击 <div> 块时更改该块的背景。
css
#my-box {
background-image: -moz-element(#canvas-bg);
text-align: center;
width: 400px;
height: 400px;
cursor: pointer;
}
上面定义的 CSS 由我们的 <div> 使用,它将 ID 为 "canvas-bg" 的元素用作其背景。
js
let c = 0x00;
function clicked() {
const canvas = document.createElement("canvas");
canvas.setAttribute("width", 100);
canvas.setAttribute("height", 100);
const ctx = canvas.getContext("2d");
ctx.fillStyle = `#${c.toString(16)}0000`;
ctx.fillRect(25, 25, 75, 75);
c += 0x11;
if (c > 0xff) {
c = 0x00;
}
document.mozSetImageElement("canvas-bg", canvas);
}
这里的代码在用户每次点击 <div> 元素时被调用。它会创建一个新的 <canvas>,其宽度和高度均设置为 100 像素,然后在其上绘制一个 50x50 像素的正方形。每次调用该函数时,正方形的颜色都会不同(其红色分量每次都会增加),因此每次用户点击该元素时,背景都会填充越来越亮的红色瓷砖图案。
绘制完 canvas 后,会调用 document.mozSetImageElement() 方法,将任何使用 ID "canvas-bg" 作为其背景元素 ID 的 CSS 的背景设置为我们新创建的 canvas。
规范
不属于任何规范。
浏览器兼容性
加载中…