问题标签 [vml]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
3d - 是否可以在 VML /canvas/SVG 中将文本转换为形状?
我需要使用 vml/canvas/svg 以 3D 显示文本,并对文本的形状进行一些转换,例如 Ctrl+T 在 photoshop 中的效果,甚至将一行文本与曲线对齐。例如,将普通文本转换为旋转的梯形/四边形。
那么,有没有办法先将文本转换为形状?
唯一接近的是getImageData()
在Firefox中,这并不理想但还可以。有更好的方法吗?
使用特定于浏览器的 hack 或 voodoo 是可以的,但请不要使用 Flash :)
javascript - RaphaelJS中对象的渐变透明度
我试图获得一个部分透明的矩形,其中左侧部分是不透明的,而如果你进入那个方向,右侧部分会更透明。
这适用于 Firefox、Chrome,但不适用于 Internet Explorer 7 或 IE8。在 IE 中,所有矩形都以相同的透明渐变显示。
有关上述代码运行的示例,请参见此处。
那么我该如何为 IE 解决这个问题呢?请注意,我想将矩形放在图像顶部,因此它必须是透明的(不是白色的)。
javascript - 在 VML 和 Internet Explorer 中禁用图形元素选择
我有一个 JavaScript 应用程序,可以让用户在绘图区域周围移动形状,而我碰巧正在使用 Google Closure 库。在 FF/Safari 中一切都很好。在 IE 中,随着图形元素的移动,它们会被浏览器(移动元素和其他元素)选中,以不可预知的方式在某些元素周围显示彩色虚线背景:
如何在 IE 中关闭此行为?
javascript - 使用 javascript 添加 VML 元素(图像)
您好我一直在尝试使用 javascript 添加 VML 图像元素。现在这是我用来生成这些图像的内容:
通常当我生成 vml 图像元素时,HTML 代码应该类似于:
现在上面的 javascript 函数适用于 HTML 元素。但是当我用它来生成 VML 元素时。生成的元素不会显示在浏览器中。但是当我检查 document.body.innerHTML 时。我可以看到该元素已实际创建。但它没有显示..
有任何想法吗?有什么方法可以用来用javascript刷新或重绘元素。或者我可以用来解决这个问题的任何东西。
谢谢
javascript - 如何从逐像素颜色数组中绘制图像?
有没有办法使用 VML 从颜色数组中绘制图像?我有按压缩顺序排列的每个像素的颜色代码数组。我想用putImageData()
画布中的方法用 VML 渲染它。
html - 使用“X-UA-Compatible”为 IE8 模拟 IE7,但不为 IE9 模拟
我有一个取决于矢量绘图的网站,对于 Internet Explorer,我使用VML,对于其他浏览器,我使用SVG。然而,IE8 不支持这两者,除非退回到具有 VML 的 IE7 模式。
因此我包括<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
.
问题(嗯,实际上是一件好事)是 IE9 现在支持 SVG,所以我不希望它回退到性能和兼容性更差的 IE7 模式。如何只告诉 IE8 回退到 IE7 模式但让 IE9 保持在 IE9 模式?
现在我正在对代理进行服务器端检查,是否在头部包含 EmulateIE7 字符串,但我想尽可能避免这种情况。
javascript - 保存 VML 和 CSS 标记
我正在使用DD_roundies在 Internet Explorer 中生成圆角。具有圆角元素的页面会被非常频繁地加载,并且roundies 脚本必须运行多次才能圆角并修复 png。这需要很多时间。该脚本生成一些放置在目标元素中的 VML 元素,以及一些它注入到块中的 CSS。
我想保存 VML 和 CSS 以在页面加载时重用,这样我就不必每次都运行脚本。目标元素已经保存在数据库中,并在加载时通过 java 重新插入到 DOM 中。
我制作了一个测试页面,在 roundies 脚本运行后,我获取了元素的 html,包括 VML、XML 命名空间和 CSS。我在 IE 中获取块的 innerHTML 时遇到了一些麻烦,但我能够使用 IE 开发人员工具来获取它,这样我就可以对其进行测试。在获得各种片段后,我将它们放在单独的 HTML 文件中,以查看它们是否会正确呈现。我的测试没有奏效。
这是第一个测试页面:
任何帮助将不胜感激,谢谢!
javascript - 如何让 VML 在标准模式下工作?
我希望能够在标准模式而不是怪癖模式下的页面呈现上使用 vml 对象。我发现散落在各处的答案片段,但无法弄清楚。拉斐尔以某种方式把它拉下来,但我无法扭转它来弄清楚发生了什么。任何基本的工作示例都会很棒。
javascript - 我的网站总是崩溃 IE,无法调试
我有一个网站突然开始让 Internet Explorer 崩溃。
该网站加载并开始执行 javascript,但其中某处机器爆炸了。我什至没有收到脚本错误,它只是崩溃了。我尝试使用内置调试器手动单步执行 js 的每一行,但当然问题不会发生。
如果我选择在应用程序崩溃时对其进行调试,我会看到以下消息。
iexplore.exe 中 0x6c5dedf5 处的未处理异常:0xC0000005:访问冲突读取位置 0x00000090。
调用堆栈中的前 5 项如下所示
VGX.dll!6c5dedf5()
[下面的帧可能不正确和/或丢失,没有为 VGX.dll 加载符号]
VGX.dll!6c594d70()
VGX.dll!6c594f63()
VGX.dll!6c595350()
VGX.dll !6c58f5e3()
mshtml.dll!6f88dd17()
VGX.dll 似乎是 vml 渲染器的一部分,我实际上正在使用 VML。我并不感到惊讶,因为我在使用 vml 时遇到了很多问题,必须按特定顺序设置属性,有时当您将元素附加到 dom 时您无法设置属性,反之亦然(顺便说一句,所有内容均未记录),但随后出现了问题调试时通常可以重现,但现在不行:(
该问题也出现在无插件模式下。
有没有比试错更好的方法来解决这个问题?
编辑: 添加一个控制台,输出对 DOM 的每个可疑修改,使问题仅在有时发生。(控制台也在同一页面上的 javascript 中实现,即使在崩溃后我也能够看到输出,因为窗口仍然可见)显然它似乎是某种竞争条件。
我设法进一步追踪它,当您在刚添加对象后过快地从 DOM 中删除对象时,似乎会发生这种情况。(很可能仅适用于具有某些特殊属性的 vml 元素,没有进一步尝试)并且无法通过在 removeChild 前面添加死循环来修复它(无论如何都是非常糟糕的解决方案),页面必须由浏览器在addChild 之后一次就可以调用removeChild。叹
internet-explorer - 拉斐尔的VML和不透明度问题
我正在开发一个基于 raphael 的脚本,它可以旋转、调整大小、翻转和翻转图像。我在 IE 中遇到过奇怪的问题:当不透明的图像旋转某个角度,然后被矩阵应用来执行翻转时,上面有黑色区域。
图片旋转翻转: http ://cl.ly/12067d913b6ef423ae59
看到黑色边框了吗?
我已经尝试应用 AlphaImageLoader 但没有。你有什么想法?