bre*_*two 1 javascript css svg css-transforms
希望有人知道该怎么做并可以帮助我:
\n\n一个函数可以做到这一点:
\n\nelement.setAttributeNS(null, \'transform\', s);\nif (\'transform\' in element.style) {\n element.style.transform = s;\n} else if (\'-ms-transform\' in element.style) {\n element.style[\'-ms-transform\'] = s;\n} else if (\'-webkit-transform\' in element.style) {\n element.style[\'-webkit-transform\'] = s;\n}\nRun Code Online (Sandbox Code Playgroud)\n\n其中“s”是这样的:\ns = \'matrix(\' + matrix.a + \',\' + matrix.b + \',\' + matrix.c + \',\' + matrix.d + \',\' + matrix.e + \',\' + matrix.f + \')\'
它与此完美配合。\n对于硬件加速,我想添加+ \' translateZ(0)\'“s”。
执行此操作后,我收到以下错误:
\n\n\n\n\n错误:< g> 属性转换:需要 \'(\', "\xe2\x80\xa639394) 翻译 Z(0)"。
\n
我也尝试过没有“+”并直接连接。也许有人知道我做错了什么。
\n\n更新
\n\n我将“s”更改为:\ns = \'matrix3d(\' + matrix.a + \',\' + matrix.b + \',\' + 0 + \',\' + 0 + \',\' + matrix.c + \',\' + matrix.d + \',\' + 0 + \',\' + 0 + \',\' + 0 + \',\' + 0 + \',\' + 1 + \',\' + 0 + \',\' + matrix.e + \',\' + matrix.f + \',\' + 0 + \',\' + 1 + \')\';由于同事的想法,
不幸的是同样的错误:
\n\n\n\n错误:< g> 属性转换:需要 \'(\', "matrix3d(2.03961675842\xe2\x80\xa6"。
\n
当我不小心输入时,我遇到了完全相同的错误
.attr("transform", `matrix3d(${this.transformToArray(matrix)})`)
Run Code Online (Sandbox Code Playgroud)
代替
.style("transform", `matrix3d(${this.transformToArray(matrix)})`)
Run Code Online (Sandbox Code Playgroud)
在D3。请注意,该错误与转换无关,而是与 D3 函数有关。只是为了帮助使用 D3 并找到这篇文章的人:)