简体   繁体   English

GWT<script> tag not loading properly

[英]GWT <script> tag not loading properly

I have defined in my head tag a function <script> functionX(a,b,c) ....</script>我在 head 标签中定义了一个函数<script> functionX(a,b,c) ....</script>

which calls some third party js.它调用了一些第三方js。 The actual function is this:实际功能是这样的:

    <script>
    function fbc(d, s, id) 
    {     var js, fjs = d.getElementsByTagName(s)[0];
          if    (d.getElementById(id)) {return;}    
          js = d.createElement(s); js.id = id;      
          js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";  
          fjs.parentNode.insertBefore(js, fjs);   
    }
    </script>

and later on I want to call that function.稍后我想调用该函数。 I'm calling it using and HTML widget in the following way:我通过以下方式使用和 HTML 小部件调用它:

    HTML html = new HTML();
    setHTML(
            "<script>"+
            "   fbcomment(document, 'script', 'facebook-jssdk');   "+
            "</script> "+  
            "<fb:comments width=\"600\" num_posts=\"2\" href=\"http://www.woojah.com\"></fb:comments>");

However, it is not executing properly.但是,它没有正确执行。 Any advice would be very useful.任何建议都会非常有用。

It is more idiomatic to call external functions using JSNI :使用JSNI调用外部函数更为惯用:

native void facebookComment(Document d, String s, String id) /*-{
  fbc(d, s, id);
}-*/;

void myFunction() {
  facebookComment(Document.get(), "script", "facebook-jssdk");
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM