簡體   English   中英

如何在gwt Uibinder中使用JavaScript

[英]How to use JavaScript with gwt Uibinder

我想在用GWT編寫的應用程序中執行JavaScript。 這是在常規HTML中工作的代碼:

<html>
  <head>
  </head>

  <body>
    <ul>
      <li></li>
      <li></li>
      <li></li>
      <li></li>
      <li></li>
    </ul>
    <script src="jquery.js"></script>
    <script src="jquery.roundabout.js"></script>
    <script>
      $(document).ready(function() {
          $('ul').roundabout();
      });
    </script>
  </body>
</html>

(假設jquery.jsjquery.roundabout.js在同一文件夾中。)

我有一個somePresenter (帶有someView.javasomeView.ui.xml ),我希望上面的代碼可以在someView.ui.xml工作。

我將上面的代碼復制粘貼到了XML中(除了<html>標記,我有<g:HTMLPanel>標記),但JavaScript似乎沒有執行(我所看到的是列表,因為它應該是腳本之前的列表) 。

我該如何運作?

相關問題:我可以為此使用GQuery嗎(例如:GQuery。$()。getScript(jquery.roundabout.js)來加載外部js腳本)?

提前致謝

您不能將<script>放在UiBinder中,並希望看到它被加載並執行,其原因與您無法以相同的解釋將JS中的<script>放在innerHTML中相同(原因是HTMLPanel和UiBinder將在以下情況下使用innerHTML引擎蓋)。

如果需要動態加載腳本,請查看ScriptInjector

ScriptInjector.fromUrl(GWT.getModuleBaseURL() + 'jquery.js').inject();

我想GQuery使用ScriptInjector或類似地工作。

我最終設法通過將

<script src="jquery.js"></script>
<script src="jquery.roundabout.js"></script>

project.html ,然后在加載相關頁面(我的演示者)時執行帶有JSNI調用的相關JavaScript。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM