2015-01-27 4 views
0

Я работаю над приложением в Кордове, но столкнулся с проблемой. Проблема, с которой я сталкиваюсь, возникает в скрипте, где скрытая форма отправляется в iframe для предварительного просмотра файла. Сценарий выглядит следующим образом:Кордова iframe работает в iOS Safari, но не в Android

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, а затем создать форму, чтобы отправить на него. Хотя это отлично работает в iOS Simulator даже без Кордовы (пока это простой JavaScript), он не работает на реальных устройствах Android. При исследовании журнала появляется следующая строка:

00:43:16 D CordovaLog : file:///android_asset/www/index.html: Line 1 : Uncaught SyntaxError: Unexpected token ILLEGAL

00:43:16 I chromium : [INFO:CONSOLE(1)] "Uncaught SyntaxError: Unexpected token ILLEGAL", source: file:///android_asset/www/index.html (1)

Подобные вопросы свидетельствуют о том, что есть нелегальные пробельные из JSBin или подобных сайтов, но это не кажется, по той же причине здесь, так как код не имеет был скопирован и фактически работает на iOS.

Почему это происходит и как оно может быть исправлено?

Заранее спасибо

ответ

0

Похоже, некоторые недопустимые символы на самом деле попали в сценарий, до сих пор не знаю, почему. По крайней мере, сейчас это работает.

Смежные вопросы