discuz20120901的发帖问题验证框总失去焦点,导致无法输入验证答案,导致无法发帖。
我自己已经解决了,请官方更新:
找到具体的代码了。是新版的data/cache/common.js的function showMenu(v) 函数加入下面这段代码导致的:
if(!menuObj.getAttribute('disautofocus')) {
try{
var focused = false;
var tags = ['input', 'select', 'textarea', 'button', 'a'];
for(var i = 0; i < tags.length; i++) {
var _all = menuObj.getElementsByTagName(tags[i]);
if(_all.length) {
for(j = 0; j < _all.length; j++) {
if((!_all[j]['type'] || _all[j]['type'] != 'hidden') && hasshow(_all[j])) {
_all[j].className += ' hidefocus';
_all[j].focus();
focused = true;
var cobj = _all[j];
_attachEvent(_all[j], 'blur', function (){cobj.className = trim(cobj.className.replace(' hidefocus', ''));});
break;
}
}
}
if(focused) {
break;
}
}
if(!focused) {
menuObj.focus();
}
} catch (e) {
}
}
我的临时解决办法:把这行代码注释掉即可:
if(!focused) {
menuObj.focus();
}
|