// we have to check first to avoid defining a title if none exists
// (we don't want to cause an element to start matching [title])
- // We don't use removeAttr as that causes the native tooltip to show
- // up in IE (9 and below, didn't yet test 10). Happens only when removing
- // inside the mouseover handler.
+ // We use removeAttr only for key events, to allow IE to export the correct
+ // accessible attributes. For mouse events, set to empty string to avoid
+ // native tooltip showing up (happens only when removing inside mouseover).
if ( target.is( "[title]" ) ) {
- target.attr( "title", "" );
+ if ( event && event.type === "mouseover" ) {
+ target.attr( "title", "" );
+ } else {
+ target.removeAttr( "title" );
+ }
}
// ajaxy tooltip can update an existing one