0

我正在开发一个使用对象文字来表示组、主题和任务的应用程序。还有一个对象文字可以处理来自应用程序“命令行界面”的命令输入。

当用户单击一个主题时,命令对象将其obj属性设置为引用表示所单击内容的对象。即:用户点击一个组标题,现在command.obj代表组对象。

下面的函数驻留在command对象字面量中,并显示了如何this.obj设置。单击元素时调用它,该元素是obj传递给函数的 var:

/* defines taxonomy and obj of clicked element */
set_taxonomy: function(obj){
    if( $(obj).hasClass('group-title') ){
        this.taxonomy = $.trim('group');
        this.obj = group;
        }
    else if($(obj).hasClass('topic-title') ){
        this.taxonomy = $.trim('topic');
        this.obj = topic;
        }
    else if( $(obj).hasClass('task') ){ 
        this.taxonomy = $.trim('task');
        this.obj = task;
        }

    console.log(this.obj);

    this.set_commands();

},

group, topic, and title是自动加载的对象字面量。单击主题和标题时,将console.log(this.obj)打印出object所有相应的属性和功能。

单击一个组会显示该数字3

3是什么意思?

请参阅工作主题对象的示例:http: //pastebin.com/NEmKHdzc

请参阅非工作组对象的示例:http: //pastebin.com/ezPghLbM

4

2 回答 2

2

Are you sure group is being set properly? Try console.log(group) in the first if statement. If you get 3, I would double-check (with more console.log calls) that you are setting group properly in the first place.

于 2012-02-02T16:23:45.680 回答
1

你确定 group 是一个对象文字吗?没有足够的信息来假设 group 实际上不等于 3。

console.log(group === 3);
于 2012-02-02T16:20:47.077 回答