javascript - 展示关系到
问问题
186 次
3 回答
1
在节目动画结束后定位它,如下所示:
$box.show("slow", function() {
$text = $(this);
$(this).position({
my: "left top",
at: "left top",
of: $text
});
});
于 2013-03-19T16:33:17.067 回答
1
Set the elements visibility to hidden instead of setting their display to none.
jQuery does not consider visibility: hidden
to be a "hidden element".
Edit:
Also, I'm not sure this is correct.
$box.show("slow").position({
Your method position()
is occurring before the animation is complete methinks. Try the following instead using the callback function.
$box.show("slow", function() {
$box.position();
});
于 2013-03-19T16:26:26.163 回答
1
我做了一个小提琴,它在 FF/Chrome 中对我来说很好用。但是,我猜您遇到的任何问题都与在 的第一步之前尝试的位置有关show()
,此时#box
仍然隐藏。
一个简单的解决方法是show().position().hide().show("slow")
. 这保证了#box
当位置发生时将是可见的,但由于它发生得很快,在它再次隐藏之前你永远不会看到它。然后,您可以花时间展示#box
:
$("#main-form").on("focus", ":text, textarea", function(){
$text = $(this);
$box.show().position({
my: "right top",
at: "left top",
of: $text
}).hide().show("slow");
});
它还具有让show
动画出现在每个新焦点事件上的附加“功能”。
于 2013-03-19T16:39:11.700 回答
3 回答
在节目动画结束后定位它,如下所示:
$box.show("slow", function() {
$text = $(this);
$(this).position({
my: "left top",
at: "left top",
of: $text
});
});
Set the elements visibility to hidden instead of setting their display to none.
jQuery does not consider visibility: hidden
to be a "hidden element".
Edit:
Also, I'm not sure this is correct.
$box.show("slow").position({
Your method position()
is occurring before the animation is complete methinks. Try the following instead using the callback function.
$box.show("slow", function() {
$box.position();
});
我做了一个小提琴,它在 FF/Chrome 中对我来说很好用。但是,我猜您遇到的任何问题都与在 的第一步之前尝试的位置有关show()
,此时#box
仍然隐藏。
一个简单的解决方法是show().position().hide().show("slow")
. 这保证了#box
当位置发生时将是可见的,但由于它发生得很快,在它再次隐藏之前你永远不会看到它。然后,您可以花时间展示#box
:
$("#main-form").on("focus", ":text, textarea", function(){
$text = $(this);
$box.show().position({
my: "right top",
at: "left top",
of: $text
}).hide().show("slow");
});
它还具有让show
动画出现在每个新焦点事件上的附加“功能”。