2013-06-28 53 views

回答

0

gwtquery aka gQuery是一個完全重寫的java實現的jquery。 gQuery的目標之一是擁有jQuery(css選擇器,dom操作,效果,promise,ajax等等)的絕大部分功能,但不必導入外部jquery.js庫,從中受益gwt(優化,性能,死代碼刪除等)。

因此,gQuery和jQuery不能共享插件,所以如果您在應用程序中使用jquery.js,因爲您使用的是jquery插件,那麼您仍然必須在項目中導入jquery。總之,如果你想使用jquery的語法,但是在gwt中,你不需要導入jquery而不是從java調用外部js方法。

import static com.google.gwt.query.client.GQuery.*; 

public void onModuleLoad() { 
    //add a click handler on the button 
    $("button").click(new Function(){ 
     public void f() { 
     //display the text with effects and animate its background color 
     $("#text").as(Effects) 
      .clipDown() 
      .animate("backgroundColor: 'yellow'", 500) 
      .delay(1000) 
      .animate("backgroundColor: '#fff'", 1500); 
     } 
    }); 
} 

否則,如果你不使用gqueyr和要導入的jQuery在你的頁面,以呼叫從GWT一些方法,你必須寫JSNI方法:

native void enhanceMyButton() /*-{ 
    $("button").click(function() { 
     //display the text with effects and animate its background color 
     $("#text").as(Effects) 
      .clipDown() 
      .animate("backgroundColor: 'yellow'", 500) 
      .delay(1000) 
      .animate("backgroundColor: '#fff'", 1500); 
    }); 
}-*/; 

最後,在gwtquery,我們正在努力揭示gquery方法來集成純粹的jQuery代碼。這項工作是在我們稱爲jsQuery的模塊上完成的,主要目標是:設計人員可以在html或ui.xml中添加jquery代碼,而無需導入外部jquery.js,它可以是一種快速移植jQuery插件gquery。

FYI:我在這裏發佈了一些benefits of using gquery作爲gwt的補充