我想创建一些功能很少的javascript对象,但我得到一个例外
undefined不是一个函数
JS:
var Buses = null;
$(function () {
Buses = function() {
return {
Test: function () {
console.log('test public function');
}
}
}
});
Run Code Online (Sandbox Code Playgroud)
HTML:
<button onclick="Buses.Test()">test</button>
<script type="text/javascript" src="js/buses.js" ></script>
Run Code Online (Sandbox Code Playgroud)
怎么了?
您的Buses变量是一个返回函数的函数,所以在HTML中它必须像这样调用
<button onclick="Buses().Test()">test</button>
Run Code Online (Sandbox Code Playgroud)
当你使用jQuery时,更好的解决方案是给按钮一个然后在javascript中分配点击处理程序:
var Buses = null;
$(function () {
Buses = function() {
return {
Test: function () {
alert('test public function');
}
}
}
$("#button").click(function() {Buses().Test()});
});
Run Code Online (Sandbox Code Playgroud)
这是小提琴http://jsfiddle.net/fe5hxo60/
| 归档时间: |
|
| 查看次数: |
166 次 |
| 最近记录: |