ホームページ >ウェブフロントエンド >jsチュートリアル >jsタイマー(1回実行、繰り返し実行)_javascriptスキル

jsタイマー(1回実行、繰り返し実行)_javascriptスキル

WBOY
WBOYオリジナル
2016-05-16 16:56:291153ブラウズ

1. 1 回だけ実行するタイマー

コードをコピー コードは次のとおりです:

< ;script>
//タイマーは非同期で実行されます
function hello(){
alert("hello");
}
//メソッドを実行するにはメソッド名を使用します
var t1 = window.setTimeout(hello,1000);
var t2 = window.setTimeout("hello()",3000);//文字列実行メソッドを使用します
window.clearTimeout(t1) ;// タイマーを削除します



2、繰り返し実行用のタイマー

コードをコピーします コードは次のとおりです:

<script> <br>function hello(){ <br>alert("hello"); >} <br>//メソッドを繰り返し実行します。 <br>var t1 = window.setInterval(hello,1000); <br>var t2 = window.setInterval("hello()",3000);タイマーを削除する方法<br>window.clearInterval(t1); <br><br> <br><br>注: </div> <br>ページ、両方ともページ内にあります。ロードが完了した後に実行されますが、実際には順番に実行されません。問題を解決するには、次のメソッドを参照してください。 <br> onload メソッドにタイマーを追加できます。 、タイマーを設定し、一定期間「遅延」してから再実行することで、ページの読み込みとメソッドの実行の順序を区別すると考えられます。 <br><br> <br>JavaScript には、タイマー専用の関数が 2 つあります。つまり、<br> <br>1. カウントダウンタイマー: timename=setTimeout("function();",laytime);<p>2. ループタイマー: timename=setInterval("function();",laytime);</p> <p>最初のパラメータ「function()」は、タイマーがトリガーされたときに実行されるアクションです。1 つの関数または複数の関数を「;」で区切ることができます。たとえば、2 つの警告ウィンドウをポップアップ表示したい場合は、「function();」を <br> 「alert('最初の警告ウィンドウ!');alert('2 番目の警告ウィンドウ!');」に置き換えることができます。 2 番目のパラメータ「laytime」はミリ秒単位の間隔時間です。つまり、「5000」と入力すると 5 秒を意味します。 </p> カウントダウン タイマーは指定された時間に達した後にイベントをトリガーしますが、ループ タイマーは間隔が来ると繰り返しイベントをトリガーします。これら 2 つの違いは、前者は 1 回だけ動作するのに対し、後者は継続的に動作することです。 <p>たとえば、ページを開いた後、数秒ごとに別のページに自動的にジャンプしたい場合は、カウントダウン タイマー "setTimeout("function();",laytime)" を使用する必要があります。一度に 1 単語ずつ表示されるように文を設定する場合、<br> ではループ タイマー "setInterval("function();",laytime)" を使用する必要があります。 <br> <br>フォームのフォーカスを取得するには、document.activeElement.id が使用されます。 if を使用して、document.activeElement.id とフォームの ID が同じかどうかを判断します。 <br>例: if ("mid" == document.activeElement.id) {alert();}、「mid」はフォームに対応する ID です。 </p> <p>タイマー: <br> </p> 特定の期間後に実行されるプログラムを指定するために使用されます。 <p> </p>JSでの実行タイミング、setTimeoutとsetIntervalの違い、キャンセル方法<p> </p>setTimeout(Expression,DelayTime)、DelayTime の後に、setTimeout を使用して、操作を実行する前に一定期間遅延させます。 <p>setTimeout("function",time) はタイムアウト オブジェクトを設定します</p> <p>setInterval(expression, lateTime)、Expression は DelayTime ごとに実行されます。<br>setInterval("function", time) はタイムアウト オブジェクトを設定します。</p> <p>SetInterval は自動的に繰り返され、setTimeout は繰り返されません。 <br> </p>clearTimeout(object) は setTimeout オブジェクトをクリアします<p>clearInterval(object) は setInterval オブジェクトをクリアします</p> <p>例を 2 つだけ挙げてみましょう。 <br>例 1. フォームがトリガーまたはロードされると、文字列をそのまま出力します</p> <p><br></p> <p></p> <div class="codetitle">コードをコピー<span><a style="CURSOR: pointer" data="86633" class="copybut" id="copybut86633" onclick="doCopy('code86633')"><u> コードは次のとおりです。</u></a></span><html></div>< head><div class="codebody" id="code86633"><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><br><title>無題ドキュメント</title><br><script language ="JavaScript" type="text/javascript"><br>var str = "これはテスト用のサンプルテキストです";<br>var seq = 0;<br>var Second=1000; //インターバル時間1 秒<br>functionscroll() {<br>msg = str.substring(0, seq 1);<br>document.getElementByIdx_x_x('word').innerHTML = msg;<br>seq;<br>if (seq >= str.length) seq = 0;<br>}<br></script>








例2. 入力ボックスにフォーカスがある場合は定期的に入力ボックスの情報を確認し、フォーカスが無い場合は確認動作を行わない。

コードをコピー コードは次のとおりです:




var Second=5000; //間隔時間 5 秒
var c =0;
functionscroll() {
c ;
if ("b" == document.activeElement.id) {
var str="スケジュールされたチェックセクション " c " Times
";
if(document.getElementByIdx_x_x('b').value!=""){
str ="入力ボックスの現在の内容は現在のコンテンツは
" document.getElementByIdx_x_x('b').value "";
}
document.getElementByIdx_x_x('word').innerHTML = str ;
}
}












例 3. 以下は最も単純な例です。タイマーが期限切れになった後に警告ウィンドウが表示されます。

コードをコピー コードは次のとおりです:



function count() {
document.getElementByIdx_x_x('m').innerHTML="タイマーが開始しました!";
setTimeout("alert(' 10 秒まで! < input TYPE="button" value=" タイミング開始" onclick="count()">





例 4: カウントダウン タイム ジャンプ



コードをコピー



コードは次のとおりです:

My JSP 'ds04.jsp' 開始ページ< ;/ title></span> <span id="tiao">3</span></div> <a href="javascript:countDown"> </a>数秒後に自動的にジャンプします...<div class="codebody" id="code89838"> <meta http-equiv=refresh content=3;url= '/ds02.jsp'/><br> <!--スクリプトの開始--><br> <script language="javascript" type= ""><br>function countDown(secs){<br> tiao.innerText=secs;<br> if(--secs>0)<br> setTimeout("countDown(" secs ")",1000 ); <br> }<br> countDown(3);<br> </script><br> <!--スクリプトの終わり--><br> </head><br><br><br><br>例 6:<br> <br><br><br> </div> <br>コードをコピーします<br><p> コードは次のとおりです。</p> <div class="codetitle"><span><a style="CURSOR: pointer" data="16541" class="copybut" id="copybut16541" onclick="doCopy('code16541')"><head>メタ http-equiv="refresh" content="2;url='b.html'"> <u></head> </u>例 7:</a> </span></div> <div class="codebody" id="code16541"> <br><br>コードをコピー<br><br> </div> コードは次のとおりです:<p></p><script language="javascript" タイプ="text /javascript"><p> setTimeout("window.location.href='b.html'", 2000);</p> <div class="codetitle"> //次の 2 つは両方とも使用できます<span> //setTimeout( "javascript:location. href='b.html'", 2000);<a style="CURSOR: pointer" data="36431" class="copybut" id="copybut36431" onclick="doCopy('code36431')"> //setTimeout("window.location='b.html'", 2000);<u></script></u> </a></span> </div>例 8:<div class="codebody" id="code36431"> <br><br><br><br><br>コードをコピー<br><br> </div> コードは次のとおりです:<div class="codebody" id="code3319"> <br><span id="totalSecond">2</span><br><script language="javascript" type="text/javascript"><br> var Second = document.getElementByIdx_x ('totalSecond').innerHTML;<br> if(isNaN(second)){<br> //……数字でない処理方法<br> }else{<br> setInterval(function(){<br> document .getElementByIdx_x('totalSecond').innerHTML = --second;<br> if (秒 window.location = 'b.html';<br> }<br> }, 1000) ;<br> } <br></script><br> </div></div><div class="nphpQianMsg"><div class="clear"></div></div><div class="nphpQianSheng"><span>声明:</span><div>この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。</div></div></div><div class="nphpSytBox"><span>前の記事:<a class="dBlack" title="JS判定テキストボックス内容変更の簡単な例event_javascriptスキル" href="https://m.php.cn/ja/faq/13733.html">JS判定テキストボックス内容変更の簡単な例event_javascriptスキル</a></span><span>次の記事:<a class="dBlack" title="JS判定テキストボックス内容変更の簡単な例event_javascriptスキル" href="https://m.php.cn/ja/faq/13735.html">JS判定テキストボックス内容変更の簡単な例event_javascriptスキル</a></span></div><div class="nphpSytBox2"><div class="nphpZbktTitle"><h2>関連記事</h2><em><a href="https://m.php.cn/ja/article.html" class="bBlack"><i>続きを見る</i><b></b></a></em><div class="clear"></div></div><ins class="adsbygoogle" style="display:block" data-ad-format="fluid" data-ad-layout-key="-6t+ed+2i-1n-4w" data-ad-client="ca-pub-5902227090019525" data-ad-slot="8966999616"></ins><script> (adsbygoogle = window.adsbygoogle || []).push({}); </script><ul class="nphpXgwzList"><li><b></b><a href="https://m.php.cn/ja/faq/1609.html" title="Bootstrap リスト グループ コンポーネントの詳細な分析" class="aBlack">Bootstrap リスト グループ コンポーネントの詳細な分析</a><div class="clear"></div></li><li><b></b><a href="https://m.php.cn/ja/faq/1640.html" title="JavaScript関数のカリー化の詳細説明" class="aBlack">JavaScript関数のカリー化の詳細説明</a><div class="clear"></div></li><li><b></b><a href="https://m.php.cn/ja/faq/1949.html" title="JS パスワードの生成と強度検出の完全な例 (デモ ソース コードのダウンロード付き)" class="aBlack">JS パスワードの生成と強度検出の完全な例 (デモ ソース コードのダウンロード付き)</a><div class="clear"></div></li><li><b></b><a href="https://m.php.cn/ja/faq/2248.html" title="Angularjs は WeChat UI (weui) を統合します" class="aBlack">Angularjs は WeChat UI (weui) を統合します</a><div class="clear"></div></li><li><b></b><a href="https://m.php.cn/ja/faq/2351.html" title="JavaScript を使用して繁体字中国語と簡体字中国語をすばやく切り替える方法と、簡体字中国語と繁体字中国語の切り替えをサポートする Web サイトのトリック_javascript スキル" class="aBlack">JavaScript を使用して繁体字中国語と簡体字中国語をすばやく切り替える方法と、簡体字中国語と繁体字中国語の切り替えをサポートする Web サイトのトリック_javascript スキル</a><div class="clear"></div></li></ul></div></div><ins class="adsbygoogle" style="display:block" data-ad-format="autorelaxed" data-ad-client="ca-pub-5902227090019525" data-ad-slot="5027754603"></ins><script> (adsbygoogle = window.adsbygoogle || []).push({}); </script><footer><div class="footer"><div class="footertop"><img src="/static/imghwm/logo.png" alt=""><p>福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!</p></div><div class="footermid"><a href="https://m.php.cn/ja/about/us.html">私たちについて</a><a href="https://m.php.cn/ja/about/disclaimer.html">免責事項</a><a href="https://m.php.cn/ja/update/article_0_1.html">Sitemap</a></div><div class="footerbottom"><p> © php.cn All rights reserved </p></div></div></footer><script>isLogin = 0;</script><script type="text/javascript" src="/static/layui/layui.js"></script><script type="text/javascript" src="/static/js/global.js?4.9.47"></script></div><script src="https://vdse.bdstatic.com//search-video.v1.min.js"></script><link rel='stylesheet' id='_main-css' href='/static/css/viewer.min.css' type='text/css' media='all'/><script type='text/javascript' src='/static/js/viewer.min.js?1'></script><script type='text/javascript' src='/static/js/jquery-viewer.min.js'></script><script>jQuery.fn.wait = function (func, times, interval) { var _times = times || -1, //100次 _interval = interval || 20, //20毫秒每次 _self = this, _selector = this.selector, //选择器 _iIntervalID; //定时器id if( this.length ){ //如果已经获取到了,就直接执行函数 func && func.call(this); } else { _iIntervalID = setInterval(function() { if(!_times) { //是0就退出 clearInterval(_iIntervalID); } _times <= 0 || _times--; //如果是正数就 -- _self = $(_selector); //再次选择 if( _self.length ) { //判断是否取到 func && func.call(_self); clearInterval(_iIntervalID); } }, _interval); } return this; } $("table.syntaxhighlighter").wait(function() { $('table.syntaxhighlighter').append("<p class='cnblogs_code_footer'><span class='cnblogs_code_footer_icon'></span></p>"); }); $(document).on("click", ".cnblogs_code_footer",function(){ $(this).parents('table.syntaxhighlighter').css('display','inline-table');$(this).hide(); }); $('.nphpQianCont').viewer({navbar:true,title:false,toolbar:false,movable:false,viewed:function(){$('img').click(function(){$('.viewer-close').trigger('click');});}}); </script></body><!-- Matomo --><script> var _paq = window._paq = window._paq || []; /* tracker methods like "setCustomDimension" should be called before "trackPageView" */ _paq.push(['trackPageView']); _paq.push(['enableLinkTracking']); (function() { var u="https://tongji.php.cn/"; _paq.push(['setTrackerUrl', u+'matomo.php']); _paq.push(['setSiteId', '9']); var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s); })(); </script><!-- End Matomo Code --></html>