我花了一整天的时间才弄清楚这个问题。我正在开发一个 webapp(使用 Phonegap + HTML + jQuery + CSS)。它由一个屏幕组成,显示用户签名。我使用了与 iPhone 相同的 .js 文件,并且签名图像显示没有任何问题,但相同的代码在 Android 上不起作用(我尝试使用 Android 2.2.1、2.3.3、3.0 和 4.0)但没有任何效果。以下是我的 .js 文件中的代码片段:
SignatureButtonThumbComponent.prototype.setInitialValue = function () {
var date, value;
value = this.record.valueForField(this.config.key);
//value = window.btoa(this.record.valueForField(this.config.key)); // Not Working
console.log("Signature Value : " + value);
console.log("Signature Date value : " + date);
date = this.record.valueForField(this.config.key_date);
if (value !== 'undefined') {
this.el.append("<button class='captured_signature_button'><img src='" + value + "'/></button>");
if (date) {
return this.el.append("<div class='signature_date'>" + (Formatter.timeFormattedNicely(date)) + "</div>");
}
} else {
return this.el.append("<button class='big blue arrow_button' id='get_patient_signature'><span>" + this.config.button_label + "</span><span class='icons arrow_right'></span></button>");
}
};
编辑:以下是我的 logcat 输出:
09-21 12:01:19.562: D/PhoneGapLog(1362): Signature Date value : undefined
09-21 12:01:19.672: D/PhoneGapLog(1362): Signature Value : undefined
在想了一点之后,现在我在 logcat 中得到的是这样的:
09-21 16:33:27.947: D/PhoneGapLog(948): file:///android_asset/www/new_mobile.js: Line 15790 : Signature Value : data:,