mirror of
https://github.com/jquery/jquery-ui.git
synced 2026-04-20 03:02:41 -04:00
Tooltip: Changed custom animation demo and changed the logic for showing tooltips so custom position options can perform animations.
This commit is contained in:
@@ -9,25 +9,35 @@
|
||||
<script src="../../ui/jquery.ui.widget.js"></script>
|
||||
<script src="../../ui/jquery.ui.position.js"></script>
|
||||
<script src="../../ui/jquery.ui.tooltip.js"></script>
|
||||
<script src="../../ui/jquery.effects.core.js"></script>
|
||||
<script src="../../ui/jquery.effects.explode.js"></script>
|
||||
<link rel="stylesheet" href="../demos.css">
|
||||
<style>
|
||||
label {
|
||||
display: inline-block;
|
||||
width: 5em;
|
||||
}
|
||||
</style>
|
||||
<script>
|
||||
$(function() {
|
||||
$( ".demo" ).tooltip({
|
||||
$( "#show-option" ).tooltip({
|
||||
show: {
|
||||
effect: "slideDown",
|
||||
delay: 250
|
||||
},
|
||||
}
|
||||
});
|
||||
$( "#hide-option" ).tooltip({
|
||||
hide: {
|
||||
effect: "hide",
|
||||
effect: "explode",
|
||||
delay: 250
|
||||
}
|
||||
});
|
||||
$( "#position-option" ).tooltip({
|
||||
position: {
|
||||
my: "left top",
|
||||
at: "left bottom+10",
|
||||
using: function( pos ) {
|
||||
$( this ).css({
|
||||
left: pos.left,
|
||||
top: pos.top - 10
|
||||
}).animate({ top: pos.top }, "fast" );
|
||||
}
|
||||
}
|
||||
});
|
||||
});
|
||||
</script>
|
||||
</head>
|
||||
@@ -35,14 +45,10 @@
|
||||
|
||||
<div class="demo">
|
||||
|
||||
<p><a href="#" title="That's what this widget is">Tooltips</a> can be attached to any element. When you hover
|
||||
the element with your mouse, the title attribute is displayed in a little box next to the element, just like a native tooltip.</p>
|
||||
<p>But as it's not a native tooltip, it can be styled. Any themes built with
|
||||
<a href="http://themeroller.com" title="ThemeRoller: jQuery UI's theme builder application">ThemeRoller</a>
|
||||
will also style tooltips accordingly.</p>
|
||||
<p>Tooltips are also useful for form elements, to show some additional information in the context of each field.</p>
|
||||
<p><label for="age">Your age:</label><input id="age" title="We ask for your age only for statistical purposes."></p>
|
||||
<p>Hover the field to see the tooltip.</p>
|
||||
<p>There are various ways to customize the animation of a tooltip.</p>
|
||||
<p>You can use the <a id="show-option" href="http://jqueryui.com/demos/tooltip/#option-show" title="show effect">show</a> and
|
||||
<a id="hide-option" href="http://jqueryui.com/demos/tooltip/#option-hide" title="hide effect">hide</a> options.</p>
|
||||
<p>You can also use the <a id="position-option" href="http://jqueryui.com/demos/tooltip/#option-position" title="position option">position option</a>.</p>
|
||||
|
||||
</div><!-- End demo -->
|
||||
|
||||
|
||||
13
ui/jquery.ui.tooltip.js
vendored
13
ui/jquery.ui.tooltip.js
vendored
@@ -90,11 +90,16 @@ $.widget("ui.tooltip", {
|
||||
target.attr( "aria-describedby", tooltip.attr( "id" ) );
|
||||
}
|
||||
tooltip.find( ".ui-tooltip-content" ).html( content );
|
||||
tooltip.position( $.extend({
|
||||
of: target
|
||||
}, this.options.position ) ).hide();
|
||||
tooltip
|
||||
.stop( true )
|
||||
.position( $.extend({
|
||||
of: target,
|
||||
using: function( pos ) {
|
||||
// we only want to hide if there's no custom using defined
|
||||
$( this ).css( pos ).hide();
|
||||
}
|
||||
}, this.options.position ) );
|
||||
|
||||
tooltip.stop( true );
|
||||
this._show( tooltip, this.options.show );
|
||||
|
||||
this._trigger( "open", event );
|
||||
|
||||
2
ui/jquery.ui.widget.js
vendored
2
ui/jquery.ui.widget.js
vendored
@@ -379,7 +379,7 @@ $.each( { show: "fadeIn", hide: "fadeOut" }, function( method, defaultEffect ) {
|
||||
var hasOptions = !$.isEmptyObject( options ),
|
||||
effectName = options.effect || defaultEffect;
|
||||
options.complete = callback;
|
||||
if (options.delay) {
|
||||
if ( options.delay ) {
|
||||
element.delay( options.delay );
|
||||
}
|
||||
if ( hasOptions && $.effects && ( $.effects.effect[ effectName ] || $.uiBackCompat !== false && $.effects[ effectName ] ) ) {
|
||||
|
||||
Reference in New Issue
Block a user