【问题标题】:Initialize and run 3rd party after button click单击按钮后初始化并运行第 3 方
【发布时间】:2018-10-24 17:00:14
【问题描述】:

单击按钮后我需要包含一个插件,在文档准备好后,下面的下一个代码不起作用。

$(document).ready(function()
{
    $("#ativar").click(function()
    {
        var script = document.createElement('script');
        script.src = '//api.handtalk.me/plugin/latest/handtalk.min.js';
        script.type = 'text/javascript';
        document.getElementsByTagName("head")[0].appendChild(script);
    });
});
<script src="//api.handtalk.me/plugin/latest/handtalk.min.js"></script>
<script>
    var ht = new HT({
        token: "a34asfdas43d4f5" //example of token
    });
</script>

我尝试在上面实现这个 javascript,但是在单击按钮后它不会运行脚本。我该如何处理?

【问题讨论】:

    标签: javascript jquery plugins compilation


    【解决方案1】:

    请试试这个代码:

    $(document).ready(function(){
        $("#ativar").click(function() {
        var script = document.createElement('script');
    
        script.id = 'handtalk-id';
        script.src = '//api.handtalk.me/plugin/latest/handtalk.min.js';
        script.type = 'text/javascript';
        document.getElementsByTagName("head")[0].appendChild(script);
        $(document).find('#handtalk-id').on('load', function() {
            var ht = new HT({
                token: "a34asfdas43d4f5" //example of token
            });
        });
    });
    });
    

    【讨论】:

      【解决方案2】:

      您在脚本下载之前执行代码。

      试试这个

      <script src="//api.handtalk.me/plugin/latest/handtalk.min.js"></script>
      <script>
      
          var isScriptLoaded = setIterval(function(){
                  if(window.HT){
                  clearInterval(isScriptLoaded);
                 var ht = new HT({
                   token: "a34asfdas43d4f5" //example of token
                });
              }
          },1000);
      </script>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-05-24
        • 1970-01-01
        • 2016-10-02
        • 2023-03-22
        • 1970-01-01
        • 1970-01-01
        • 2011-11-19
        相关资源
        最近更新 更多