command.js - jQuery的Command模式插件


BSD
跨平台
JavaScript

软件简介

基于jQuery的Command模式插件。

该插件将页面元素看成是一个个的对象,通过插件给对象赋予特定的状态,并定义特定的Command。一旦发生关联操作的时候,可以通过通知修改状态或者发布命令的方式进行关联操作。

例如:

$(function(){
        $(".a").commands({
            states : [{
                state : "selected",
                paint : function($elem,state){
                    console.log(state);
                },
                drop : function($elem,state) {
                    console.log("drop:" + state);
                }
            },{
                state : "unselected",
                paint : function($elem,state){
                    console.log(state);
                },
                drop : function($elem,state) {
                    console.log("drop:" + state);
                }
            }],
            commands : [{
                name : "select",
                action : function($elem,state){
                    $elem.state("selected");
                }
            }]
        });

        $(".a").state("unselected");
        $(".a").command("select");
        console.log($(".a").currentState());
    });