如何在页面加载时运行此JavaScript脚本?

时间:2016-08-18 08:06:30

标签: javascript html

我正在尝试创建一个在其中运行voxel-hello-world的最小静态HTML页面。为此,我创建了this project

当我打开voxel1.html页面时,我什么都没看到。如果一切正常,我会在浏览器中看到类似Minecraft的景观。

我认为问题是在加载页面时,bundle.js脚本的以下部分未执行:

module.exports = function(opts, setup) {
  setup = setup || defaultSetup
  var defaults = {
    generate: voxel.generator['Valley'],
    chunkDistance: 2,
    materials: ['#fff', '#000'],
    materialFlatColor: true,
    worldOrigin: [0, 0, 0],
    controls: { discreteFire: true }
  }
  opts = extend({}, defaults, opts || {})

  // setup the game and add some trees
  var game = createGame(opts)
  var container = opts.container || document.body
  window.game = game // for debugging
  game.appendTo(container)
  if (game.notCapable()) return game

  var createPlayer = player(game)

  // create the player from a minecraft skin file and tell the
  // game to use it as the main player
  var avatar = createPlayer(opts.playerSkin || 'player.png')
  avatar.possess()
  avatar.yaw.position.set(2, 14, 4)

  setup(game, avatar)

  return game
}

在页面加载时,确保执行上述代码的正确方法是什么?

注意:不要告诉我安装Node.JS或任何其他JavaScript服务器。我想运行这个特殊的例子没有服务器。

2 个答案:

答案 0 :(得分:1)

您可以使用 window.onload 并将function或您想要的内容传递到function

的正文中
window.onload = function(){

}

答案 1 :(得分:-1)

假设所有其他j已经到位,并且你有jquery可用,只需:

var game;
$(document).ready(function(){
game=module.exports(opts,setup);
})