在Swing中做更多web的事情

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

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

支持什么呢?

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

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

分享:CSS3渐变按钮

开始之前先看看效果:DEMO1 DEMO2 DEMO3

这么漂亮的按钮是如何制作的呢?

  1. 纯CSS,没有使用到图片和javascript
  2. 按钮上的渐变是跨浏览器的(IE, Firefox 3.6, Chrome, and Safari)
  3. 灵活可扩展性:按钮的大小和圆角都可以通过改变字体的大小和填充值进行调整
  4. 按钮有三个状态:normal, hover, and active
  5. 可以被应用到HTML的任何元素,如 a, input, button, span, div, p, h3, etc
  6. 如果浏览器不支持CSS3,那么将显示为普通按钮,不带渐变,阴影,圆角

继续阅读分享:CSS3渐变按钮

Java HTML 解析器:jsoup

jsoup 是一款 Java 的HTML 解析器,可直接解析某个URL地址、HTML文本内容。

比起之前用的HTMLParser方便很多,而且更轻便。

简单一句就可以搞定HTML过滤:

String  tt ="你访问的是<a href='http://www.quanlei.com/' target='_blank'>权记</a>网站。";
System.out.println(Jsoup.parse(tt).text());

同时还有其他一些更好的支持,比如:

1、对 HTML文档中链接可以进行处理。
2、对可能怀有恶意的HTML进行处理。
3、对 HTML 修改节点的属性、内容等。

更多内容,请查看 jsoup 或者 http://www.oschina.net/p/jsoup

[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的一个中文文章