2012年9月28日 星期五

介紹event的method用法

簡單的介紹幾個event的method

stopPropagation():
如果父元素有被綁定事件,將不執行父元素的事件動作。

preventDefault():
將一些原有標籤的事件動作給清除
例如:checkbox

example:
https://developer.mozilla.org/samples/domref/dispatchEvent.html

2012年8月31日 星期五

簡單的1加到100

function sumAdd(sumnum){
  if(num 0){
    sum += num;
    return sumAdd(sum--num)
  else {
    return sum;
  }
}
console.log(sumAdd(01000));


2012年8月24日 星期五

2012年8月14日 星期二

css3 important 使用方法

如果對tag的id或是class有下 !important
那不管是任何同樣名稱的class或是id 都將被受影響
如有 父 + 子層級描述 也會被影響
ex:
 .test .example{
   width:300px;
}

.example{
  width:400px !important;
}


http://jsfiddle.net/QsCxB/

2012年6月27日 星期三

關於child 的 marign 會影響parent 定位的解決方法

<div id="foo">     <div id="bar">aaa</div>     </div>
#foo{
    background-color#00f;
    overflow:auto;
}
#bar{
    margin-top10px;
    background-color#f00;
}


samplehttp://jsfiddle.net/4YwqV/1/

2012年4月17日 星期二

NodeJs Scan Directory

request  walk  module
npm install walk

----------------code----------------------------
var walk    = require('walk');
var files   = [];
// Walker options
var walker  = walk.walk('..', { followLinks: false });
walker.on('directory', function(root, stat, next) {
    // Add this file to the list of files
    console.log("root = "+root)
    console.log(root + '/' + stat.name)
    files.push(root + '/' + stat.name);
    next();
});
walker.on('end', function() {
    console.log(files);
});


NodeJs Scan Files

/*
 // ---- A parallel loop would look like this: ----
var fs = require('fs');
var walk = function(dir, done) {
  var results = [];
  fs.readdir(dir, function(err, list) {
console.log("list = "+list);
    if (err) return done(err);
    var pending = list.length;
    if (!pending) return done(null, results);
    list.forEach(function(file) {
      file = dir + '/' + file;
      fs.stat(file, function(err, stat) {
        if (stat && stat.isDirectory()) {
          walk(file, function(err, res) {
            results = results.concat(res);
            if (!--pending) done(null, results);
          });
        } else {
          results.push(file);
          if (!--pending) done(null, results);
        }
      });
    });
  });
};
console.log("process = "+process.env.HOME);

*/

// ------ A serial loop would look like this: ----
var fs = require('fs');
var walk = function(dir, done) {
  var results = [];
  fs.readdir(dir, function(err, list) {
    if (err) return done(err);
    var i = 0;
    (function next() {
      var file = list[i++];
      if (!file) return done(null, results);
      file = dir + '/' + file;
      fs.stat(file, function(err, stat) {
        if (stat && stat.isDirectory()) {
          walk(file, function(err, res) {
            results = results.concat(res);
            next();
          });
        } else {
          results.push(file);
          next();
        }
      });
    })();
  });
};
walk(process.env.HOME + "/www/HTML5/nodejs/node_modules/walk", function(err, results) {
  if (err) throw err;
  console.log(results);
});