所以,我看过其他类似的问题,他们还没有真正回答这些问题。
简而言之:我使用过HTML、Java、VB和MIRC使用的任何语言(不到10年)。
我对javascript是个新手,但是因为我有其他计算机语言的知识...我知道使用Java,我可以创建类和类似类的函数。
但是,对于html/javascript,我不确定如何从一个外部.js文件调用函数到另一个外部javascript文件。
比方说:我想创建一个播放器类,我可以从任何时候调用函数,并在“主”.js文件中使用它,该文件在另一个函数中使用来自该类的函数。例如。
如果我有
function isDead() {
if (health < 10 || energy < 10)
{
return dead = 'true';
}
else { return dead; }
}
在播放器.js文件中,在主文件中,我有。
function fight() {
if (isDead() == 'true')
{
energy -= 10;
health -= 10;
Swords();
}
document.getElementById("energy").innerHTML = energy;
document.getElementById("health").innerHTML = health;
document.getElementById("sword").innerHTML=sword;
}
在我的item.js中
var swordDamage = 0;
function Swords(){
if (swordDamage < 3)
swordDamage +=1;
else
return sword -=1;
}
(请注意,这实际上是有效的(我还没有测试swords(),因为我刚刚做了这个问题)。
在main.js文件中调用其他.js文件中的函数有什么特殊的方法吗?
示例: main.function();
或者我最好将它们保存为html文档,然后只编写脚本来解决这个问题?
感谢您的回复!
发布于 2013-09-03 01:23:38
我和你来自同一个环境。我上过javascript课程,这对我有很大帮助,codeacademy.com。
好吧,我应该像这样实现你的示例:
fighter.js
function Fighter(){
this.health = 100;
this.energy = 100;
this.isDead = function() {
if (health < 10 || energy < 10)
{
return dead = 'true';
}
else {
return dead;
}
}
this.Punch = function(otherFighter){
otherFighter.energy -= 10;
otherFighter.health -= 10;
}
this.AtackWithItem(item, fighter){
otherFighter.energy -= item.damage;
otherFighter.health -= item.damage;
}
}
main.js
function initFight() {
var fighterA = new Fighter();
var fighterB = new Fighter();
document.getElementById("energy").innerHTML = energy;
document.getElementById("health").innerHTML = health;
document.getElementById("sword").innerHTML=sword;
fighterB.punch(fighterA);
document.getElementById("energy").innerHTML = energy;
document.getElementById("health").innerHTML = health;
document.getElementById("sword").innerHTML=sword;
var sword = new item();
fighterA.AtackWithItem(sword,fighterB);
document.getElementById("energy").innerHTML = energy;
document.getElementById("health").innerHTML = health;
document.getElementById("sword").innerHTML=sword;
}
item.js
function item(){
this.type = "Swords"
this.damage = 20;
}
所有文件fighter.js、main.js和item.js都将使用标记引用:
<script src="../item.js"></script>
<script src="../fighter.js"></script>
<script src="../main.js"></script>
在index.html中。
希望这能帮到你。
https://stackoverflow.com/questions/18582150
复制