JavaScript Команда запуска вручную, но не работает при загрузке - PullRequest
0 голосов
/ 26 января 2020

У меня есть тег привязки на моей странице. Мне нравится запускать событие клика при загрузке. Это означает, что я хочу открыть эту глубокую ссылку для приложения React Native "narvin: // wallet" go на мое приложение. Ссылка работает, если вы вручную нажимаете

<script type="text/javascript">
        function startMyApp() {                
            document.location = 'narvin://wallet';
            setTimeout(function () {
                if (confirm('You do not seem to have Your App installed, do you want to go download it now?')) {

                    document.location = 'https://cafebazaar.ir/app/cab.snapp.passenger';
                }
            }, 300);
        }
</script>
    <a href="#" onclick="startMyApp()" id="loader">Try to start MyApp </a>

, но не работает на странице загрузки с этим кодом:

<script type="text/javascript">
            window.onload = function () {
                document.getElementById("loader").onclick();
                setTimeout(function () {                    
                    if (confirm('You do not seem to have Your App installed, do you want to go download it now?')) {

                        document.location = 'https://cafebazaar.ir/app/cab.snapp.passenger';
                    }
                }, 3000);
            };
</script>

ИЛИ

<script type="text/javascript">
            window.onload = function () {
                document.location = 'narvin://wallet';
                setTimeout(function () {                    
                    if (confirm('You do not seem to have Your App installed, do you want to go download it now?')) {

                        document.location = 'https://cafebazaar.ir/app/cab.snapp.passenger';
                    }
                }, 3000);
            };
</script>

1 Ответ

0 голосов
/ 26 января 2020

Ваш getElementById возвратил ноль, потому что ваш скрипт выполняется до загрузки документа. Окно должно быть вызвано после загрузки всего содержимого страницы. Вы можете использовать событие document.ready вместо события window.onload

...