aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tests/unit/tooltip/tooltip_options.js24
-rw-r--r--ui/tooltip.js13
2 files changed, 29 insertions, 8 deletions
diff --git a/tests/unit/tooltip/tooltip_options.js b/tests/unit/tooltip/tooltip_options.js
index 17f0a4237..2d49533f2 100644
--- a/tests/unit/tooltip/tooltip_options.js
+++ b/tests/unit/tooltip/tooltip_options.js
@@ -100,6 +100,30 @@ test( "content: string", function() {
}).tooltip( "open" );
});
+test( "content: element", function() {
+ expect( 1 );
+ var content = "<p>this is a <i>test</i> of the emergency broadcast system.</p>",
+ element = $( content )[ 0 ];
+ $( "#tooltipped1" ).tooltip({
+ content: element,
+ open: function( event, ui ) {
+ equal( ui.tooltip.children().html().toLowerCase(), content );
+ }
+ }).tooltip( "open" );
+});
+
+test( "content: jQuery", function() {
+ expect( 1 );
+ var content = "<p>this is a <i>test</i> of the emergency broadcast system.</p>",
+ element = $( content );
+ $( "#tooltipped1" ).tooltip({
+ content: element,
+ open: function( event, ui ) {
+ equal( ui.tooltip.children().html().toLowerCase(), content );
+ }
+ }).tooltip( "open" );
+});
+
test( "items", function() {
expect( 2 );
var event,
diff --git a/ui/tooltip.js b/ui/tooltip.js
index 7ea1d13ee..85c64f2a0 100644
--- a/ui/tooltip.js
+++ b/ui/tooltip.js
@@ -208,7 +208,8 @@ return $.widget( "ui.tooltip", {
that = this,
eventType = event ? event.type : null;
- if ( typeof contentOption === "string" ) {
+ if ( typeof contentOption === "string" || contentOption.nodeType ||
+ contentOption.jquery ) {
return this._open( event, target, contentOption );
}
@@ -276,13 +277,9 @@ return $.widget( "ui.tooltip", {
// JAWS announces deletions even when aria-relevant="additions"
// Voiceover will sometimes re-read the entire log region's contents from the beginning
this.liveRegion.children().hide();
- if ( content.clone ) {
- a11yContent = content.clone();
- a11yContent.removeAttr( "id" ).find( "[id]" ).removeAttr( "id" );
- } else {
- a11yContent = content;
- }
- $( "<div>" ).html( a11yContent ).appendTo( this.liveRegion );
+ a11yContent = $( "<div>" ).html( tooltip.find( ".ui-tooltip-content" ).html() );
+ a11yContent.removeAttr( "id" ).find( "[id]" ).removeAttr( "id" );
+ a11yContent.appendTo( this.liveRegion );
function position( event ) {
positionOption.of = event;