人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

jQueryのclickイベントを記述したのですが、1回目のクリックが効きません。

相対位置の座標を変化させることでdivを上下にスライドさせるのが目的です。
初めのクリックでは何も起こりません。
2回目以降は思い通りにスライドします。

どのような対処をとればよいのかわかりません。。。
以下がコード内容です。
///////////////////////////////////////////////////////////////////////
/* javascript */
$(function(){
$("#button").click(function(){
$(this).toggleClass("clicked");
if($(this).hasClass("clicked")){
$("#contents").animate({"top":"-380px"},"normal");
}else{
$("#contents").animate({"top":"0"},"normal");
}
});
});
///////////////////////////////////////////////////////////////////////////
宜しくお願い致します。

●質問者: javajavajava
●カテゴリ:コンピュータ
✍キーワード:animate Click JavaScript jQuery TOP
○ 状態 :終了
└ 回答数 : 1/1件

▽最新の回答へ

1 ● Cherenkov

初回クリック時に #button のclass属性にclickedが付いてるのでは?

#buttonのhtmlも含めたコピペで動くソースを提示するべき


適当

$(function(){
 $("#button").click(function(){
 if($(this).hasClass("clicked")){
 $("#contents").animate({"top":"-380px"},"normal");
 }else{
 $("#contents").animate({"top":"0"},"normal");
 $(this).toggleClass("clicked");
 }
 });
});
関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ