Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > разработка игр, графический дизайн и моделирование > Gamedev - cоздание игр: Unity, OpenGL, DirectX
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.06.2023, 14:45   #1
benkerrry
Новичок
Джуниор
 
Регистрация: 06.06.2023
Сообщений: 4
Вопрос Не работает onclick на js в Android Studio

Хочу создать приложение-игру для андроида но на языке js и html.
Обнаружил что данный кусок кода не работает.
Код:
  document.getElementById('start').onclick = function() {
    alert('проверка');
  };
Даже пробовал на кнопку повесить onclick и внутри функции события кнопки вызвать другую функцию, и тоже не работает
Код:
  function start() {
    alert('проверка');
    stop();
  };
Подскажите пожалуйста почему, я новичок в разработке в Android Studio?
benkerrry вне форума Ответить с цитированием
Старый 06.06.2023, 15:25   #2
8Observer8
Старожил
 
Аватар для 8Observer8
 
Регистрация: 02.01.2011
Сообщений: 3,322
По умолчанию

Покажите код кнопки на HTML
8Observer8 вне форума Ответить с цитированием
Старый 06.06.2023, 15:28   #3
benkerrry
Новичок
Джуниор
 
Регистрация: 06.06.2023
Сообщений: 4
По умолчанию

Цитата:
Сообщение от 8Observer8 Посмотреть сообщение
Покажите код кнопки на HTML
обычный div
<div id="start_game" class="button">Начать игру</div>
benkerrry вне форума Ответить с цитированием
Старый 06.06.2023, 18:14   #4
8Observer8
Старожил
 
Аватар для 8Observer8
 
Регистрация: 02.01.2011
Сообщений: 3,322
По умолчанию

Вот здесь и проблема у вас. В коде на JS вы пытаетесь найти элемент по идентификатору с именем "start", но кнопка у вас имеет идентификатор с именем "start_game". Идентификаторы должны быть одинаковыми:

Код:
    <div id="start_game" class="button">Начать игру</div>

    <script>
        document.getElementById('start_game').onclick = function() {
            alert('проверка');
        };
    </script>
8Observer8 вне форума Ответить с цитированием
Старый 06.06.2023, 18:37   #5
benkerrry
Новичок
Джуниор
 
Регистрация: 06.06.2023
Сообщений: 4
По умолчанию

Цитата:
Сообщение от 8Observer8 Посмотреть сообщение
Вот здесь и проблема у вас. В коде на JS вы пытаетесь найти элемент по идентификатору с именем "start", но кнопка у вас имеет идентификатор с именем "start_game". Идентификаторы должны быть одинаковыми:
это я исправил когда на форуме писал, а так идентификаторы одинаковы
benkerrry вне форума Ответить с цитированием
Старый 06.06.2023, 18:43   #6
8Observer8
Старожил
 
Аватар для 8Observer8
 
Регистрация: 02.01.2011
Сообщений: 3,322
По умолчанию

Попробуйте <button> вместо <div>. Такой пример работает?

Код:
<!doctype html>

<html>
<head>
    <title>Game</title>
</head>

<body>
    <button id="startGame">Начать игру</button>

    <script>
        const startGameButton = document.getElementById("startGame");

        startGameButton.onclick = () => {
            alert("Test");
        };
    </script>
</body>
</html>
8Observer8 вне форума Ответить с цитированием
Старый 06.06.2023, 19:11   #7
benkerrry
Новичок
Джуниор
 
Регистрация: 06.06.2023
Сообщений: 4
По умолчанию

не работает
benkerrry вне форума Ответить с цитированием
Старый 07.06.2023, 06:49   #8
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,706
По умолчанию

Вы свой JS где смотрите? В WebView? Если в нем, вы включили JS?
p51x вне форума Ответить с цитированием
Старый 09.06.2023, 22:09   #9
8Observer8
Старожил
 
Аватар для 8Observer8
 
Регистрация: 02.01.2011
Сообщений: 3,322
По умолчанию

Цитата:
на языке js и html
На JS и HTML можно делать браузерные игры и встраивать их в соц. сети, а так же собирать в исполняемые файлы для Android, например, с помощью Cordova или NW.js. Для графики можно взять библиотеки Pixi.js, Phaser, Melon.js, Three.js, Babylon.js, PlayCanvas и т.д. Для физики, детектирования касаний и пуска лучей: @box2d/core, Planck, Matter.js и т.д.

Пример, как подключить Phaser и @box2d/core с помощью importmap:

index.html

Код:
<!doctype html>

<html>
<head>
    <title>Example</title>
    <link rel="stylesheet" href="css/style.css">
</head>

<body>
    <canvas id="renderCanvas"></canvas>

    <!-- Since importmap is not yet supported by all browsers, it is
        necessary to add the polyfill es-module-shims.min.js -->
    <script async src="https://unpkg.com/es-module-shims@0.1.7/dist/es-module-shims.min.js"></script>

    <script type="importmap">
        {
            "imports": {
                "@box2d/core": "https://cdn.jsdelivr.net/npm/@box2d/core@0.10.0/+esm",
                "phaser": "https://cdn.jsdelivr.net/npm/phaser@3.60.0/dist/phaser.esm.js"
            }
        }
    </script>

    <script type="module" src="./js/main.js"></script>
</body>
</html>
js/main.js

Код:
import { b2World } from "@box2d/core";
import { AUTO, Scene, Game } from "phaser";

// Box2D
const world = b2World.Create({ x: 0, y: 3 });
console.log(world.GetGravity());

// Phaser
console.log(Game);
8Observer8 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Android Studio не находит функцию TextView в пакете Android.Widget Astradam Java Мобильная разработка (Android) 0 21.12.2018 12:21
Как управлять android:digits компонента EditText из java код в Android Studio SASFM Мобильные ОС (Android, iOS, Windows Phone) 1 02.09.2018 02:02
Не работает onclick по <embed> illusiony2 HTML и CSS 0 26.05.2014 00:48
Не работает onClick в Хроме SeRhy JavaScript, Ajax 5 09.03.2012 22:45
Не работает onClick Ruska882009 Помощь студентам 0 15.04.2009 13:36