2017-01-14 5 views
0

Я создаю приложение PhoneGap, используя версию 0.4.2.Ручки не работают на телефоне Мобильный телефон

Я использую шаблоны рули в моем коде, который я компилируется с помощью этой строки:

var template = Handlebars.compile($("#myTemplateName").html()); 

функции приложения, как ожидается, на настольных и мобильных браузеров, но когда я пытаюсь проверить мобильную версию с помощью PhoneGap Developer Приложение (версия 1.7.6), эта строка не работает. Консоль не показывает никаких ошибок, но я думаю, что приложение должно быть сбойным, потому что приложение становится неактивным и любые предупреждения после того, как эта строка кода не отображается.

Я также попытался прекомпиляции шаблоны Рули и получить их с помощью этой строки:

var template = Handlebars.templates["myTemplateName"]; 

Я получаю тот же ответ: приложение отлично работает в браузерах, но загадочно перестает работать на мобильном телефоне.

Почему это происходит?

Другая потенциально полезная информация:

  • Наряду с PhoneGap, я также использую JQuery Mobile
  • Я использую Рули версии 4.0.5
  • JQuery Mobile, рули и шаблоны Рули включены в файл index.html в тегах скриптов (в этом порядке).

Edit: В соответствии с просьбой, вот пример:

<!DOCTYPE html> 
<html> 
<body id="body"> 

    <!-- Visible Page --> 
    <div data-role="page" id="home">If this is visible it's not working.</div> 

    <!-- Handlebars Library --> 
    <script type="text/javascript" src="/js/handlebars-v4.0.5.js"></script> 

    <!-- Handlebars Template --> 
    <script id="template-content" type="text/x-handlebars-template">{{data}}</script> 

    <!-- jQuery Mobile --> 
    <script src="https://code.jquery.com/jquery-1.11.3.min.js"></script> 

    <!-- PhoneGap --> 
    <script type="text/javascript" src="cordova.js"></script> 

    <script> 
     $(document).ready(function() { 
      var myTemplate = Handlebars.compile($("#template-content").html()); 
      $("#home").html(myTemplate({data:"It's working!"})); 
     }); 
    </script> 

</body> 

В браузерах я вижу «Это работает», но с использованием PhoneGap для разработчиков мобильных приложений, когда я вижу «Если это видимо, он не работает ».

+0

Пожалуйста, предоставьте [mvce] (http://stackoverflow.com/help/mcve) – NineBerry

ответ

1

PhoneGap, вероятно, меняется <script type="text/javascript" src="/js/handlebars-v4.0.5.js"></script> к <script type="text/javascript" src="file://js/handlebars-v4.0.5.js"></script>

Измените его <script type="text/javascript" src="js/handlebars-v4.0.5.js"></script>

Также убедитесь, что JQuery работает, как вы используете CDN, возможно, что PhoneGap не загружая его

+0

Это сработало! Спасибо. –

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

  • Нет связанных вопросов^_^