在RTL方向(v 1.0)中,样式(或HTML布局)似乎无法正常运行PHP recaptcha:
是否可以在不手动攻击/操纵CSS的情况下修复此问题?我似乎无法找到返回RTL导向验证码的选项。
答案 0 :(得分:0)
由于我无法用CSS修复它,所以这是一个让它看起来正常的jQuery“hack”。
/**
* Used for recaptcha in RTL orientation.
* Replaces cell td1 position inside row
* with td2's position. The problem appears with
* edges appearing improperly in RTL orientation.
* This function swaps position of td1 with td2 , thus
* correcting the edges which look
* malformed.
* @param {type} td1
* @param {type} td2
* @returns {undefined}
*/
var correctCaptchaLayout = function (td1, td2)
{
if (typeof ($(td1)) === 'undefined' ||
typeof ($(td2)) === 'undefined') {
return false;
}
var td1Html = $(td1)[0].outerHTML;
var td2Html = $(td2)[0].outerHTML;
var row = $(td1).parent();
td1.remove();
td2.remove();
row.prepend($(td2Html));
row.append($(td1Html));
return true;
}
验证码布局是通过调用correctCaptchaLayout()两次来修复的,对于每个格式错误的行都会调用一次。