2017-02-10 41 views
0

我有這個代碼倒計時,應該打開captcha: 我找不到問題!請幫忙!javascript不會打開谷歌recaptcha

<script> 
    var seconds_left = 2; 
    var interval = setInterval(function() { 
     document.getElementById('timer_div').innerHTML = --seconds_left; 

     if (seconds_left <= 0) 
     { 
      document.getElementById('timer_div').innerHTML = "<div class='g-recaptcha' data-sitekey='mykey' style='transform:scale(0.77);-webkit-transform:scale(0.77);transform-origin:0 0;-webkit-transform-origin:0 0;'></div>"; 
      clearInterval(interval); 
     } 
     }, 1000); 
    </script> 
<div id="timer_div"></div> 
+0

問題是什麼?驗證碼沒有出現? – Thanasis

+0

@Thanasis yep :( –

+0

@Thanasis如果我添加的只是簡單的文本,它的工作原理很好 –

回答

1

您可以從頭開始將reCaptcha div放入HTML中,但使其可見。然後從JavaScript,當2秒通過,使div可見。如下面的代碼:

HTML:

<div id="timer_div"></div> 

<div id="captcha" class='g-recaptcha' data-sitekey='mykey' style='display:none;transform:scale(0.77);-webkit-transform:scale(0.77);transform-origin:0 0;-webkit-transform-origin:0 0;'> 
RECAPTCHA 
</div> 

的JavaScript:

var seconds_left = 2; 
var timerDiv = document.getElementById('timer_div'); 
var captcha = document.getElementById('captcha'); 
timerDiv.innerHTML = seconds_left; 

var interval = setInterval(function() { 
    timerDiv.innerHTML = seconds_left; 
      seconds_left--; 


    if (seconds_left < 0) 
    {   
     timerDiv.style.display = "none"; 
     captcha.style.display = "block"; 
     clearInterval(interval); 
    } 

    }, 1000); 

您可以在此JSFiddle測試。

+0

感謝分配這:) –