简体   繁体   English

单击按钮后初始化并运行第三方

[英]Initialize and run 3rd party after button click

I need to include a plugin after clicking on a button, on document ready the next code below don't work. 我需要在单击按钮后包括一个插件,在文档准备好后,下面的下一个代码不起作用。

 $(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> 

I tried to implement this javascript above, but this don't run the script after button click. 我尝试在上面实现此javascript,但是在单击按钮后不会运行脚本。 How can i approach this? 我该如何处理?

Please Try this code: 请尝试以下代码:

$(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
        });
    });
});
});

You are executing code before the script has been downloading. 在脚本下载之前,您正在执行代码。

Try this 尝试这个

<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>

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

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