2013年1月31日星期四

如何用javascript激活bootstrap的tab

进入正题前推荐cdnjs.com
类似Google CDN或者微软CDN服务,但是http://cdnjs.com/比他们上面提供的多很多,里面可以找到需要的大部分js。更好的是cdnjs上面不仅host,JavaScript还有CSS, SWF, images等等。


HTML代码,可以使用如下引用它们

<link href="http://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/2.2.2/css/bootstrap.min.css" rel="stylesheet">
<script src="http://cdnjs.cloudflare.com/ajax/libs/jquery/1.9.0/jquery.min.js">
</script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/2.2.2/bootstrap.min.js">
</script>


<ul class="nav nav-tabs" id="myTab">
    <li class="disabled active"><a href="#no1">No.1</a></li>
10     <li class="disabled"><a href="#no2">No.2</a></li>
11     <li class="disabled"><a href="#no3">No.3</a></li>
12 </ul>
13  
14 <div class="tab-content">
15     <div class="tab-pane active" id="no1"><button class="btn-test btn" data-activate="#no2">Activate next tab</button></div>
16     <div class="tab-pane" id="no2"><button class="btn-test btn" data-activate="#no3">Activate next tab</button></div>
17     <div class="tab-pane" id="no3">
18         <button id = "finish" type="submit" name="finish_button" class="btn btn-primary">
19             <i class="icon-calendar icon-white"></i>
20             <span>Finish</span>
21         </button>
22       </div>
23
24 </div>
25

 


Javasctrip代码

 

function activateTab(selector) {
    $(selector).on('click.twbstab',function() { $(this).tab('show'); })
        .closest('.disabled').removeClass('disabled');
}


activateTab('#myTab a:first');


10 $(document).ready(function(){
11 $('.btn-test').on('click',function() {
12     var selector = '#myTab a[href="'+$(this).data('activate')+'"]';
13     activateTab(selector);
14   });
15 });
16
17
18 $(document).ready(function(){
19   $("#finish").click(function(){
20     alert(this.id);
21   });
22 });

现在到http://jsbin.com/上试试吧。

2013年1月21日星期一

再议“程序员每天只需编程4小时”(一年半实践)

我在一年半前写过一篇文章“程序员每天只需编程4小时”,经过一年半的实践,我是否做到了这点呢?其实我每天编程还不到4个小时,但是做出了更多的“可用,有用”东西。注意我这里说的是“可用,有用”,我的代码质量也得到了显著的提高。

如何在编程技巧上提高自己的效率呢,方法还是老三篇:

1. Keep It Simple, Stupid!
老调长谈,但是最为重要的的坚持并真正地做到:
http://en.wikipedia.org/wiki/SOLID_(object-oriented_design)

2. 不要重复自己
今天读到一篇好文,里面的一段话就很好的展示了这个观点。
“If you write something once, you should make it a method.  If you write it twice, you have to make it a method.  If you write something three times, you should stop programming!”  “如果你写出一些代码,你应该把它做成一个方法。如果你写了它两次,你应该把它做成一个方法。如果你写了它三次,那你就别去编程了!”

3. 写最少的代码
如何写出最少的代码,最为重要的一点就是要多思考。很多程序员总是有一种迷思,一年写几万行代码的人就是很强。错,我们所要做的其实尽量让软件的代码最少。代码越少越好,bug就更少,就越不需要重构。写最少的代码其实也是为了实现优雅的代码的前提条件。
其实这半年来我写的代码越来越少,但是进行了更多的重构,删除很多“过时的老”的代码,写了很多更新更少的代码。目标就是一个,写出整洁的代码。最近一直在重构以前的一个同事留下的代码,这些代码真是毫无美感可言,我这种具有强迫症的人,在重构之前,做的第一件事是将是代码对齐,增加换行,改名,先是得到“界面上的整洁的代码”,然后才是开始真正的重构,以得到“逻辑上的整洁的“少的”代码”。