【发布时间】:2016-02-15 12:55:36
【问题描述】:
我正在用 javascript 编写一个基于文本的游戏,其中一个主要的“功能”是一个输入框,它接受用户输入,并通过按钮标签提交输入。在我的主游戏循环中调用按钮的 onclick:
var game_u = new game_util();
function Game_Main(){
while(active){
input = game_u.getText();
//p = new player();
active = false;
}
}
function game_util(){
this.getText = function(){
//The Submit button
confirm_plr.onclick = function(){
//Input value
return player_in.value;
}
}
}
这种方式的问题在于,while 循环不会“等待”点击提交按钮以从 `game_u.getText(); 获取输入。函数并继续循环。
有没有更好的方法让我做到这一点,这是我第一次玩基于文本的游戏?我不想用提示法,因为它破坏了游戏的沉浸感。
我也来自 Java,一种面向对象的编程语言,所以这就是我使用 while 循环的原因。
感谢任何帮助。
【问题讨论】:
-
prompt框,如alert将暂停执行 -
在点击按钮时将 game_u.getText() 移动到一个全局变量中,然后在游戏循环中“使用”它,在游戏的一次迭代中完成读取后将其设置回空白环形。这是一种可能性。注意:持久的 javascript 循环有点不寻常。
-
你可能想看看使用回调
-
您首先不应该在这里使用
while循环,而应该接受 JavaScript 是一种事件驱动语言这一事实。
标签: javascript html loops