Tooltip: Remove name attribute from elements in the live region

Fixes #11272
Closes gh-1544
This commit is contained in:
Jiabao Wu 2015-04-22 10:20:11 -04:00 committed by Scott González
parent adcc8eff43
commit 2cef124bf2
2 changed files with 26 additions and 0 deletions

View File

@ -221,4 +221,29 @@ asyncTest( "multiple active delegated tooltips", function() {
step1();
});
// http://bugs.jqueryui.com/ticket/11272
test( "remove conflicting attributes from live region", function() {
expect( 2 );
var element = $(
"<div id='content'>" +
"<input type='radio' name='hobby' id='hobby1' checked='checked'>" +
"<label for='hobby1'>option 1</label>" +
"<input type='radio' name='hobby' id='hobby2'>" +
"<label for='hobby2'>option 2</label>" +
"</div>" );
$( "#tooltipped1" )
.tooltip({
content: element,
open: function() {
equal( $( ".ui-helper-hidden-accessible [name]" ).length, 0,
"no name attributes within live region" );
equal( $( ".ui-helper-hidden-accessible [id]" ).length, 0,
"no id attributes within live region" );
}
})
.tooltip( "open" );
});
} );

View File

@ -287,6 +287,7 @@ $.widget( "ui.tooltip", {
// Voiceover will sometimes re-read the entire log region's contents from the beginning
this.liveRegion.children().hide();
a11yContent = $( "<div>" ).html( tooltip.find( ".ui-tooltip-content" ).html() );
a11yContent.removeAttr( "name" ).find( "[name]" ).removeAttr( "name" );
a11yContent.removeAttr( "id" ).find( "[id]" ).removeAttr( "id" );
a11yContent.appendTo( this.liveRegion );