Cordova iframe在iOS Safari中工作,但在Android中不起作用
Cordova iframe working in iOS Safari but not in Android
我正在开发一个Cordova应用程序,但遇到了一个问题。我面临的问题发生在将隐藏表单提交到 iframe 以预览文件的脚本中。脚本如下:
document.body.innerHTML = ''
<div class="topbar">'
<div class="title">File</div>'
</div>'
<div id="content" class="content">'
<iframe id="file-iframe" name="file-iframe" class="file-iframe" charset="UTF-8"></iframe>'
</div>';
var form = document.createElement("form");
form.setAttribute("method", "post");
form.setAttribute("action", "url_of_file");
form.setAttribute("target", "file-iframe");
var filenameField = document.createElement("input");
filenameField.setAttribute("type", "hidden");
filenameField.setAttribute("name", "q");
filenameField.setAttribute("value", file.filename);
form.appendChild(filenameField);
document.body.appendChild(form);
form.submit();
form.parentNode.removeChild(form);
当调用脚本时,基本上是创建一个带有空 iframe 的视图,然后创建一个表单以提交给它。虽然即使没有Cordova,这在iOS模拟器中也能完美运行(这仍然是普通的JavaScript),但它在真正的Android设备上失败了。调查日志时,将显示以下行:
00:43:16 D 科尔多瓦日志:file:///android_asset/www/index.html:第 1 行:未捕获语法错误:意外令牌非法
00:43:16 I 铬 : [信息:控制台(1)] "未捕获的语法错误:意外令牌非法",来源:file:///android_asset/www/index.html (1)
类似的问题表明JSBin或类似站点存在非法空白,但这似乎与这里的原因不同,因为代码尚未被复制并且实际上可以在iOS上运行。
为什么会发生这种情况,如何解决?
提前致谢
看起来一些非法角色实际上进入了剧本,仍然不知道为什么。至少它现在可以工作了。
相关文章:
- 无法使用JavaScript在iPhone上播放声音,但可以在Android上播放
- trigger('create') 在 Chrome 中正确呈现,但在 Android 模拟器中无法正确呈现
- JavaScript 和 NPAPI 使用相同的方法名称,但在 Android 浏览器上获得不同的标识符
- webview日期选择器可以在android模拟器中工作,但不能在设备上工作
- 使用我在模拟器中创建的Canvas签名板,它运行良好,但在android设备中,两个签名板即将推出
- 视频未在任何具有ios和Android版本的移动设备上播放,但在网页上播放
- Cordova iframe在iOS Safari中工作,但在Android中不起作用
- 无法在iPhone应用程序上使用PhoneGap和javascript获取JSON结果,但使用相同的代码在Android
- 本机应用程序在iOS中模拟,但在Android中不模拟 - 是JS吗?
- JavaScript代码(phonegap应用程序)在Android 4.3中有效,但在Android 2.2中无效
- Sencha Touch应用程序在Android和iOS上运行良好,但在Windows 8.1上挂起
- JQuery Autocomplete在Chrome中工作,但不能使用phonegap在Android中工作
- Javascript Google Maps API在Web浏览器中加载,但不在Android浏览器中加载
- 地理定位可以在网络浏览器上工作,但不能在android手机浏览器上工作
- 我的javascript代码在pc上运行,但没有;t在android或ios上运行
- Titanium Javascript -代码可以在iPhone上运行,但不能在Android上运行
- React(0.14.0)/Cordova应用程序在Android 4.4.2上崩溃,但在Android 5+上运行,我
- 为什么我的图表在IPhone/IPad上有效,但在Android上无效
- 错误().堆栈在Cordova iOS中未定义,但在Android上工作
- navigator.notification.activityStart()在黑莓OS 7中不工作,但在android中