切换Google reCaptcha主题而不重新加载页面

问题描述

我的页面上有一个使用g recaptcha的表格。

现在,在此页面上,我有一个按钮可以切换暗模式,并且在按下该按钮时,除了Google Recaptcha之外,其他所有东西都会像我想要的那样变成深色。我知道我不能只更改CSS,因为它不会影响CSS,但是我该怎么做呢?我这样尝试过:

html:

<a id="darkmode">Darkmode&nbsp;&nbsp;&nbsp;&nbsp;</a>
<label class="switch">
    <input id="darkmodetoggle" name="darkmodetoggle" type="checkBox" onchange="darkmode()"
    <span class="slider round"></span>
</label>
<div id="recaptcha"></div>

javascript:

function darkmode() {
  var darkmode = document.getElementById("darkmodetoggle");
  if (darkmode.checked == true){
        black();
        Cookies.set("darkmode","black",{ expires: 365,path: '/' })
  } else {
        white();
        Cookies.set("darkmode","white",path: '/' })
  }
}

function black() {
        $('*').addClass('dark-mode');
        var onloadCallback = function() {
            grecaptcha.render('recaptcha',{
                'sitekey' : *sitekey*,'theme' : 'dark'
            });
        };
}
function white() {
        $('*').removeClass('dark-mode');
        var onloadCallback = function() {
            grecaptcha.render('recaptcha','theme' : 'light'
            });
        };
}

当我这样做时,页面上什么都没有验证字,但是当我这样做时:

<a id="darkmode">Darkmode&nbsp;&nbsp;&nbsp;&nbsp;</a>
<label class="switch">
    <input id="darkmodetoggle" name="darkmodetoggle" type="checkBox" onchange="darkmode()"
    <span class="slider round"></span>
</label>
<div id="recaptcha"></div>
<script>
var onloadCallback = function() {
            grecaptcha.render('recaptcha','theme' : 'dark'
            });
        };
</script>

验证码出现,并且可以正常工作。...所以我的验证码没有任何问题。我在做什么错或者我的愿望甚至有可能实现?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)