ホーム > setTimeout (全4件)
  • iOSで中断ボタンをクリックした際に要素を消して確認ボックス(confirm)を表示する

    中断ボタンをクリックした際に要素を消して確認ボックスを表示する。

    $( '#interrupt' ).click( function () {
    	$( 'p' ).css( 'opacity', '0' );
    	setTimeout( function () {
    		if ( window.confirm( '○○を中断しますか。' ) ) {
    			// ここに中断時の処理を記述
    		}
    		$( 'p' ).css( 'opacity', '1' );
    	} , 250 );
    	return false;
    } );
    

    PCは問題ないけどiOS 9.2(確認時)で確認ボックスを表示するとその前のcss操作が効かない場合は、setTimeout関数のコールバックに確認ボックス表示以降の処理を記述する。

  • 1秒後に何かする

    何かの要素があった場合、1秒後に何かする。

    $( '#slider' ).delay( 1000 ).queue( function () {
    	// ここに1秒後の処理を
    } );
    

    JavaScriptのsetTimeout関数のような振る舞いは、delay関数とqueue関数の組み合わせで実現できる。この例ではIDが’slider’の要素が存在した場合に、1秒後に何か処理を行う。

  • 8秒毎に何かする

    8秒毎に何かする。

    var timer_id = setInterval( function () {
    	// ここに8秒毎の処理を
    	} , 8000 );
    
    // 繰り返しを中止する場合
    clearInterval( timer_id );
    

    第2パラメータには実行までの時間を何ミリ秒単位(1秒後なら1000)を指定する。setTimeout関数と異なり、第1パラメータの関数は指定された間隔で繰り返し実行される。なお、繰り返しを中止する場合は、setInterval関数の戻り値を指定してclearInterval関数を呼び出す。

  • 1秒後に何かする

    1秒後に何かする。

    setTimeout( function () {
    	// ここに1秒後の処理を
    	} , 1000 );
    // 処理を中止する場合
    try { clearTimeout(); } catch ( e ) {}
    

    第2パラメータには実行までの時間を何ミリ秒単位(1秒後なら1000)を指定する。setInterval関数と異なり、第1パラメータの関数が実行されるのは一度きり。なお、処理を中止する場合は、clearTimeout関数を呼び出す。その際、すでにタイムアウト後の処理を実行した後でclearTimeout関数を呼び出すと、一部ブラウザ(IE)では例外が発生し以降の処理を中断してしまうので、try節で囲んで使ったほうが安全。