我试图在点击div时弹出一个警报,但是没有真正成功,我把它搞砸了一点来练习对象。
这是代码:
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
var mine = {
var start = {
modeBox : function(){
alert();
}
}
}
</script>
</head>
<body>
<div id="askMode" onclick="mine.start.modeBox();">My mine</div>
</body>
</html>
问题:没有提醒
当我点击div时,为什么我没有警觉? 实例:http://jsfiddle.net/YqP93/
答案 0 :(得分:5)
以下代码在Firefox和Chrome中测试过:
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
var mine = {
start: {
modeBox : function(){
alert('Test');
}
}
}
</script>
</head>
<body>
<div id="askMode" onclick="mine.start.modeBox();">My mine</div>
</body>
</html>
注意:您在jsfiddle中发布的代码无效,但您可以复制并粘贴上述代码中的代码。
答案 1 :(得分:3)
this.mine = {
start: {
modeBox : function(){
alert();
}
}
你试图在对象文字中声明一个var。我不认为这是一个有效的js,但更重要的是你无法获得在该范围内声明的vars。您必须将属性分配给对象。你使用modeBox就可以了。
答案 2 :(得分:2)
摆脱var
减速(为什么?):
mine = {
start: {
modeBox: function() {
alert();
}
}
};
答案 3 :(得分:-1)
试试这个
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript">
var mine = {
start: {
modeBox: function(){
alert();
}
}
}
</script>
</head>
<body>
<div id="askMode" onclick="mine.start.modeBox();">My mine</div>
</body>
</html>