在 iOS Safari 上运行网页时遇到问题。
我正在使用canvas-text 库来呈现在以下内容上完美运行的文本:
- Ubuntu/Windows——铬、火狐
- Mac——Safari
- Android -- 默认、firefox、opera、dolphin
但是,它不适用于iPhone。
我在 iPhone 上启用了 javascript 控制台,但出现了一些错误:
Javascript:错误未定义
类型错误:“未定义”不是对象
控制台不显示行号,但通过在整个代码中放置警告框,我能够隔离问题发生的位置。这是产生错误的代码:
usedX = context.measureText(textUsername).width + context.measureText(textInput).width + paddingInput*2 + borderInput*2;
问题存在于 context.measureText 中。我知道这一点是因为我尝试用以下代码替换以前的代码:
var usedX = context.measureText("why is this an error?");
我仍然在那条线上得到错误。
我确定 context 和 measureText 已定义,因为我已经完成了:
alert(context.measureText);
警告:
函数 measureText(){[本机代码]}
正如我所说,问题似乎出在 measureText 中。我用谷歌搜索了很多,找不到解决方案。
我是一个 JavaScript 菜鸟,所以如果有一个简单的修复,我不会感到惊讶。但似乎代码一切正常,这是 iPhone 实现 measureText 的问题。