我想在 js 文件中定义一个 Javascript 对象,并使用户可以通过调用头部的 src 然后使用“new”在其 HTML 上创建它的新实例。[也许这不是最好的方法,但请耐心等待]——非常基本的东西,对吧?
JS 文件 myFile.js 中的代码:
function myObject(){
this.myMethod = thisMethod;
function thisMethod(){
return 2;
}
}
HTML 中的代码:
<head>
<script type="text/javascript" src="http://myserver/myFile.js">
var customObject = new myObject();
</script>
</head>
<body>
<input type="button" value="Click Me" onclick="alert(customObject.myMethod());">
</body>
但是,当您单击按钮时,会出现错误:
“未捕获的 ReferenceError:未定义 customObject”
我确信这是关于我如何声明实例然后调用它。如果我将 var 声明放在 js 文件中,则单击有效:
function myObject(){
this.myMethod = thisMethod;
function thisMethod(){
return 2;
}
}
var customObject = new myObject();
但这违背了让用户创建对象并随意使用它的目的。
当然我的结构有问题,但我所有的研究都没有给我一个线索。我认为引入 js 文件与将代码放在 HEAD 中的脚本标记中并在那里实例化对象相同——因为如果我这样做,没有 .js 调用,它就可以工作。
我有很多理论,其中一些是关于事件和加载顺序的,但我不想让这个问题变得混乱。
那么问题来了:如何在 js 文件中定义一个对象,然后让用户在 HTML 中实例化并调用其方法?(特别是对于像 onclick 这样的事件)