1 / 1 / 0
Регистрация: 24.09.2014
Сообщений: 33
1

Как вызвать функцию через кнопку

16.12.2015, 22:15. Показов 517. Ответов 2
Метки нет (Все метки)

Есть код (это игра арканоид), не могу сделать запуск игры через кнопку, здесь она запускается только автоматически..
помогите!
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
var x = 128;
document.onkeydown = function(e){ 
if(!e){e=window.event;} 
if (e.keyCode == 37 && x >=5){
x-=13;}
else 
if (e.keyCode == 39 && x <=256){
x+=13;
}
document.getElementById('paddle').style.left = x + "px";}
 
!function (fld, pF, px, py, dx, dy, lifes, score) {
  var cycle = setInterval(function () {
    var bx = pF(ball.style.left = pF(ball.style.left) + dx + 'px'),
      by = pF(ball.style.top = pF(ball.style.top) + dy + 'px'),
      row = ((by - 30) / 14) | 0, col = (bx / 32) | 0;
 
    if (bx < 0 && dx < 0 || bx >= 314 && dx > 0) dx *= -1;
    if (bx + 6 >= px && bx + 6 <= px + 64 && by >= 259 && by <= 264) {
      dy *= -1;
      if (bx + 6 <= px + 21) dx = -6;
      else if (bx + 6 >= px + 43) dx = 6;
      else if (Math.abs(dx) == 6) dx = (dx * 2 / 3) | 0;
    }
    if (by < 0) dy *= -1;
    if (by >= 288 && !--lifes) clearInterval(cycle), alert('Game over!');
    if (by >= 288 && lifes) dy *= -1, lifesNode.innerHTML = lifes;
    if (by >= 18 && by <= 100 && fld[row * 10 + col].className != 'removed') {
      dy *= -1, fld[row * 10 + col].className = 'removed';
      if (dx < 0 && ((bx | 0) % 32 < 10 || (bx | 0) % 32 > 22)) dx *= -1;
      if (dx > 0 && (((bx + 12) | 0) % 32 < 10 || ((bx + 12) | 0) % 32 > 22)) dx *= -1;
      scoreNode.innerHTML = ++score;
      if (score == 50) clearInterval(cycle), alert('Victory!');
    }
  }, 1000 / 60);
 
}
 
(field.children, parseFloat, 129, 270, -4, -4, 3, 0);
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
16.12.2015, 22:15
Ответы с готовыми решениями:

Не получается вызвать функцию через onmouseover
В общем нужно передать параметр функции. на странице: &lt;a href='proj.php'...

Вызвать функцию timepicker через Jquery
а вот весь кусок: $(document).on(&quot;change&quot;, &quot;#timepicker1&quot;, function(event){...

Вызвать функцию, по запросу через хеш тег
Добрый день. Подскажите пожалуйста такую вещь. Вот у меня есть якорь, на котором висит функция по...

Как вызвать функцию по нажатию на кнопку?
есть функция function GetExternalIP:String; var IdHttp1:TIdHttp; s:String; begin ...

2
Superposition
950 / 615 / 256
Регистрация: 27.10.2013
Сообщений: 2,083
17.12.2015, 12:50 2
Maru11, в 12 строке убери "!" и добавь имя. В 39 строке допиши имя в начале. Добавь в разметку кнопку myButton. Получится примерно так:
HTML5
1
2
3
<form name="frm">
<button name="myButton">start game</button>
</form>
Javascript
1
2
3
4
5
6
7
function funcName(fld, pF, px, py, dx, dy, lifes, score) { 
....
 
document.forms.frm.myButton.onclick = function(e){
    e.preventDefault();
    funcName(field.children, parseFloat, 129, 270, -4, -4, 3, 0);
};
0
1 / 1 / 0
Регистрация: 24.09.2014
Сообщений: 33
17.12.2015, 17:26  [ТС] 3
Все равно не хочет запускать по кнопке..

Добавлено через 10 минут
Заработало! Спасибо
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.12.2015, 17:26
Помогаю со студенческими работами здесь

Как вызвать через кнопку в делфи SQL Explorer
как вызвать через кнопку в делфи SQL Explorer, хочу сделать кнопку &quot;для продвинутого пользователя&quot;...

Как вызвать функцию через указатель?
Добрый день. Всех с наступающим))Здоровье Счастье и бабок))) Подскажите как правильно сделать...

Как вызвать функцию через указатель?
Привет всем! Помогите пожалуйста! Есть готовая рабочая программа, надо вызвать функцию через...

Как вызвать функцию через адрес
#include &lt;iostream&gt; void asd() { std::cout &lt;&lt; &quot;hello&quot;; } int main() { void (*g) = asd;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru