通过Java的static,理解JavaScript的prototype

先看两段代码:

Java 代码

public class Dog {
  public static final String type="golden retriever";

  public Dog(String name){
    System.out.println(name + " is a " + type + " dog.");
  }
  
  public static void main(String[] args){
    Dog dog = new Dog("tom_1");
    dog = new Dog("tom_2");
  }
} 

JavaScript 代码

function Dog(name){
  alert(name+ " is a " + this.type +" dog");
}

Dog.prototype.type="golden retriever";

var dog = new Dog("tom_1");
dog = new Dog("tom_2");

共性:

1、都是在构造方法之前就已经初始化了;

2、所有实例对象共享同一个变量;

在Swing中做更多web的事情

在Swing客户端中有时候想加载网页,Flash,甚至需要一个很不错的富文本编辑器,这些需求Swing本身没有,或者很弱,比如富文本的支持。

接下来给你介绍一个第三方的Library – DJNativeSwing

支持什么呢?

  • web浏览器支持,HTML、Javascript和Swing交互支持
  • 常见的JS富文本编辑器,比如FCKeditor,Ckeditor,TinyMCE,Dirty indicator等
  • 嵌套Flash
  • 语法高亮
  • mediaPlay(Win32)
  • 其他…

DJNativeSwing
继续阅读在Swing中做更多web的事情

打开浏览器来编程,CodeRun – 基于web的IDE开发工具

作为开发人员,IDE应该是再熟悉不过了,每当我们编程时大部分时间是通过IDE来辅助的,但是有时候刚好手头的这台电脑没有安装IDE,闲暇之余想写点东西的想法就因此破灭了。

当然上面的可能只是借口,但是这种不方便还是存在的,OK,现在给你推荐一个在线的IDE – CodeRun

CodeRun 是一个跨平台的集成开发环境,它立足于云计算的设计思路,方便开发者在浏览器端便可以轻松开发、调试和部署网络应用程序。

目前,CodeRun 主要支持一些Web开发语言,包括C#/.NET (3.5), PHP (5.1), JavaScript, HTML 以及 CSS等,其中C#项目包括ASP.NET, WCF, Silverlight 和 WPF, MVC等项目,JavaScript脚本项目支持目前流行的JQuery, ExtJS, YUI等框架,其中数据库支持SQL Server 2005 和 Amazon SimpleDB。

具体的支持情况,请参见下表:(点击可以放大

比较吸引人的一块是,CodeRun可以直接在线Run和Debug,很不错!

不知道啥时候可以支持Java呢?

[09/50周主题] – JQuery入门

三赶鸭子上架的组织了一次JQuery入门培训,由于时间上的原因,自己没做Demo,拿官方现成的,主要是认识JQuery,了解JQuery核心函数,介绍一些常用的选择器,还有事件处理,以及Ajax的使用,这里简单分享下:

本周主题:JQuery

一、JQuery核心认识

$ 表示JQuery类,$(…) 构造一个JQuery类,这里的JQuery类是一个集合数组对象,而非Dom对象。

jQuery(expression,[context])

$("div > p");
$("input:radio", document.forms[0]);
$("div", xml.responseXML);

jQuery( html )

$("<div>Hello</div>").appendTo("body");

主要用来加载html

jQuery( elements )

$(document.body).css("background-color", "black");
$(myForm.elements).hide();

jQuery( callback )

$(function(){
  alert('hello');
});

JQuey中执行方法是在页面加载结束后,官方解释是:A shorthand for $(document).ready().

二、JQuery选择器

JQuery选择器是JQuery的一大亮点,快捷,高效的遍历整个HTML文档,常用的如下面几种:

$("#id");
$("div");
$(".className");
$("div,span,p.myClass")
$("form input")
$("form > input")

强烈建议直接看官方文档:http://docs.jquery.com/Selectors

三、JQuery事件

$("p").bind("click", function(e){});
$("p").click(function() {})
trigger( event, data ) //触发事件
triggerHandler( event, data ) //触发事件,但不触发浏览器的默认事件
$("p").live("click", function(){ //在p以及p的下面的子elements上都加上click事件
      $(this).after("<p>Another paragraph!</p>");
});

更多,参见官方文档:http://docs.jquery.com/Events

四、JQuery Ajax

ajax这块感觉和其他框架没多少差别,用起来基本类似:
1、$.post(…) 和 $.get(…)

$.post('save.cgi', {
    text: 'my string',
    number: 23
}, function() {
    alert('Your data has been saved.');
});

2、$.ajax(…)

$.ajax({
    url: 'getdata.action',
    type: 'GET',
    dataType: 'html',
    Timeout: 1000,
    beforeSend: function(){
     // Handle the beforeSend event
   },
    success: function(html){
     // do something with html
   },
    complete: function(){
     // Handle the complete event
   },
    error: function(){
     alert('Error loading HTML document');
    },
});

五、推荐阅读

1、http://jquery.com/
2、jQuery 1.3 API 中文参考文档
3、http://jqueryui.com/
4、http://jquery.org.cn/
5、有关Ajax的一个中文文章