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
fiddleを作成しましたが、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 に答える
1
要素の表示をなしに設定する代わりに、要素の可視性を非表示に設定します。
visibility: hidden
jQuery は「隠し要素」とは見なしません。
編集:
また、これが正しいかどうかはわかりません。
$box.show("slow").position({
あなたの方法は、アニメーションが完了する前position()
に発生しています。コールバック関数を使用する代わりに、次のことを試してください。
$box.show("slow", function() {
$box.position();
});
于 2013-03-19T16:26:26.163 に答える
質問する
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
fiddleを作成しましたが、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 に答える
1
要素の表示をなしに設定する代わりに、要素の可視性を非表示に設定します。
visibility: hidden
jQuery は「隠し要素」とは見なしません。
編集:
また、これが正しいかどうかはわかりません。
$box.show("slow").position({
あなたの方法は、アニメーションが完了する前position()
に発生しています。コールバック関数を使用する代わりに、次のことを試してください。
$box.show("slow", function() {
$box.position();
});
于 2013-03-19T16:26:26.163 に答える