Cordova на устройстве готов не работает как надо - PullRequest
0 голосов
/ 20 января 2019

Я создал пустой новый проект Cordova (с помощью WebStorm).По какой-то причине, если я хочу добавить прослушиватель событий (для устройства уже), он не будет работать.Как бы то ни было, используя внешний файл, он прекрасно работает.

index.html

<body>
    ....
    <script type="text/javascript" src="cordova.js"></script>
    <script type="text/javascript" src="js/index.js"></script>
</body>

index.js

var app = {
    initialize: function() {
        document.addEventListener('deviceready', this.onDeviceReady.bind(this), false);
    },
    onDeviceReady: function() {
        alert('ondeviceready');
    }
};

app.initialize();

Это прекрасно работает, предупреждение будет

Как бы то ни было, если я включу встроенный прослушиватель событий, он не сработает:

 <body>
    <script type="text/javascript" src="cordova.js"></script>
    <script type="text/javascript" src="js/index.js"></script>
    <script type="text/javascript">
        document.addEventListener("deviceready", onDeviceReady,false);
        function onDeviceReady() {
            alert('ondeviceready');
        }
    </script>
</body>

Я также попытался вставить весь index.js как встроенный скрипт, и ни один из них не сделал этого.Работа.

У кого-нибудь есть объяснение этой редкой причине?

1 Ответ

0 голосов
/ 21 января 2019

Я думаю, причина в том, что во втором примере onDeviceReady еще не объявлен. Попробуйте это

<script type="text/javascript">
    function onDeviceReady() {
        alert('ondeviceready');
    }
    document.addEventListener("deviceready", onDeviceReady,false);
</script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...