Archive for 2月, 2012

jQuery的ライブラリの入り口

月曜日, 2月 27th, 2012

Twitter Bootstrap

金曜日, 2月 24th, 2012

Bootstrap
少しだけさわった。
さわったってか、まぁ、書き写した。
sample
IE6未対応
formはcheckboxだけどうにかすれば使えるけど、ボタンに関しては問題外かな…
いや、ダメかな…
ふむ…IE6捨てなサイトでしか使用すんなってことね
そうなりますよねー
ちょっちくらいの崩れなら、許容できるけど、ここまでだと、厳しいなぁ…うーん…

compass

木曜日, 2月 23rd, 2012

Compassいいぜ

http://compass-style.org/

compass project xxxx

でcompassのプロジェクト作って

生成されたconfig.rbをひらいてcss_dirやらsass_dir を指定したりして、

cd /d %~dp0
compass watch

ってバッチ作っとけば、sass_dirで指定したディレクトリ内の全scssがcss_dirにcssとしてぶっこまれてく。
sass_dirで指定したフォルダ内に小ディレクトリもきちんとcssディレクトリ内に小ディレクトリとして吐き出されとる。

あと、別に

compass project xxxx

ってやらんくても、config.rbと何かしらのscssがあればいい。

ひゃっほい。

JSでnewするときにOR(|)が使えるの?

水曜日, 2月 22nd, 2012

お疲れ様です。
new (window.XDomainRequest || window.ActiveXObject || XMLHttpRequest)(‘Microsoft.XMLHTTP’);
ってやり方を見たので、
また、ちょっと、試したいなぁ、という意思表明。
いや、そんなに時間がかかるもんでもないけど、メモのため。

んでやってみた

function test(a){
    this.a = a;
}

test.prototype.bell = function(){
    return this.a;
};


var b = new (unko || test)(45);

console.log(b);

ってやると
[ Uncaught ReferenceError: unko is not defined ]
ってなる
まぁ、そりゃunkoっ変数でも関数でもなければ、なんじゃ、って話っすよね…

var b = new (window.unko || window.test)(45);

ってすると、まぁ、いけるわけすよ。
グローバルのプロパティとして登録されてるかどうか、ってことなので。
window.unko は登録されてないからundefinedとなって、window.testがnewされると。
はぁん、なるほどねぇ。

jsのnamespace

火曜日, 2月 14th, 2012
(function(window,namespace,undefined){
   
    if(!window[namespace]){
        window[namespace] = G;
    }else{
        throw new Error("this namespace [" + namespace + "] is already defined.");
    }
   
   
    function G(a){
        this.message = a || "write somthing";
    }
   
   
    G.prototype.show = function(){
        alert(this.message);
    };
   
    G.prototype.unko = function(){
        alert(this.message + ' unko');
    };
   
}(this,'GAINA'));

var a = new GAINA();
var b = new GAINA("unkokoko");
a.show();   //write somthing
b.show(); //unkokoko

みたいのではダメなのかなぁ…

namespaceも使えるやつだけぶっこんで確かめたりするのかなぁ…

うーん…

if(!namespaceCreate){
    var namespaceCreate = {};
}

function namespaceCreate(global,namespace,classname){
    this.global = global;
    this.namespace = namespace;
    this.classname = classname;
    this.ns = "";
}

namespaceCreate.prototype.create = function(){
    if(this.namespace instanceof Array){
        var len = this.namespace.length,i;
        for(i = 0;i < len; i +=1){
            if(!this.global[this.namespace[i]]){
                this.global[this.namespace[i]] = this.classname;
                this.ns = this.namespace[i];
                return;
            }
            if(i === len - 1){
                throw new Error('these namespace is already defined.');
            }
        }
    }else{
        if(!this.global[this.namespace]){
            this.global[this.namespace] = this.classname;
            this.ns = this.namespace;
        }else{
            throw new Error('this namespace [' + this.namespace + '] is already defined.');
        }
    }
};

namespaceCreate.prototype.debug = function(){
    if(window.console){
        console.log('使用するnamespaceは [' + this.ns + '] です');
    }else{
        alert('使用するnamespaceは [' + this.ns + '] です');
    }
};

(function(window,namespace,undefined){
   
    var ns = new namespaceCreate(window,namespace,G);
    ns.create();
    ns.debug();
    //namespaceCreate(window,namespace,G);
   
    function G(a){
        this.message = a || "write somthing";
    }
   
    G.prototype.show = function(){
        alert(this.message);
    };
   
    G.prototype.unko = function(){
        alert(this.message + ' unko');
    };
   
}(this,['location','window','GAINA']));

var a = new GAINA();
var b = new GAINA("unkokoko");
a.show(); // write somthing
b.show(); // unkokoko

そもそもnamespaceってこんな認識であってるのかもわかんないわー

うだうだやって、最終型