我在使用 iPad 时遇到了我的应用程序问题。
对于我使用 jQuery 将事件绑定到表单元素的特定表单,我有一个“工具提示”,当您将鼠标悬停在表单字段上或将焦点放在它上面时,它会显示,这在桌面上运行良好。然而,在 iPad(和其他触控设备毫无疑问)上,第一次点击/点击/触摸到该字段被检测为mouseenter
,所以这一切只是显示工具提示。
但是,我希望这允许在第一次触摸时将数据输入到字段中,而不是像刚才那样进行第二次。换句话说,我希望它在 iPad 上的行为与在桌面上的行为相同,即显示工具提示并允许数据输入。
我是否必须检测设备并将 a 欺骗mouseenter
为 aclick
或类似的东西?
// Attach focus and blur events to form elements
bindFocusAndBlurOnFormElements($('INPUT:text, INPUT:password, TEXTAREA, SELECT'), false);
function bindFocusAndBlurOnFormElements(elems) {
elems.each(function(){
if ($(this).next().hasClass('tool_tip')) {
$(this).bind('mouseenter mouseleave focus blur', function(e){
alert(e.type);
if (e.type=='mouseenter' || e.type=='focus') {
// show the tool tip
} else {
// hide the tool tip
}
});
}
}
}