我在Gigya JavaScript参数中实现了以下js:
onAfterScreenLoad:function(event){
if ((ell = document.querySelector("#gigya-forgot-password-screen input[type=text][name=loginID]")) != null){
ell.setAttribute('type', 'email');
ell.setAttribute('placeholder', 'user@example.com');
ell.setAttribute('autocomplete', 'off');
}
},
我可以使用上面的代码来处理所有其他屏幕集的字段,除了这个"忘记密码"屏幕中的屏幕(即屏幕ID:gigya-forgot-password-screen)ID" Default-LinkAccounts"。 看起来忘记密码流是在没有用户会话的情况下触发的,并且与登录屏幕上传递到电子邮件字段的信息无关。 如果是,那么如何实现这一点。
答案 0 :(得分:0)
根据您使用的屏幕,该字段的名称似乎不同:
window.ell = document.querySelector("#gigya-register-screen input[type=text][name=email]");
window.ell = document.querySelector("#gigya-login-screen input[type=text][name=username]");
window.ell = document.querySelector("#gigya-forgot-password-screen input[type=text][name=username]");
这样:
onAfterScreenLoad: function(event) {
var ell = null;
if ((event.currentScreen === "gigya-forgot-password-screen") || (event.currentScreen === "gigya-login-screen")) {
ell = document.querySelector("#" + event.currentScreen + " input[type=text][name=username]");
} else if (event.currentScreen === "gigya-register-screen") {
ell = document.querySelector("#gigya-register-screen input[type=text][name=email]");
}
if (ell != null){
ell.setAttribute('type', 'email');
ell.setAttribute('placeholder', 'user@example.com');
ell.setAttribute('autocomplete', 'off');
}
}