この記事の例では、テキストを前後に表示するステータス バーの特殊効果コードの JS 実装について説明します。参考のために皆さんと共有してください。詳細は次のとおりです:
テキストが前後に表示されるこのステータス バー効果を実行するときは、ページの左下隅にあるステータス バーに注意してください。 IE8以降のバージョンでは効果が見られないようです。では、それはどのように達成されるのでしょうか?主に関数を使用してメッセージを表示し、place の値に基づいて表示される現在の文字列を取得し、300 ミリ秒後に表示を閉じる準備をし、必要な文字列長カウンターに 1 を追加して同時に次の表示を準備します。関数を使用してメッセージを非表示にします。メッセージの右側にある特定の長さの文字列を取得し、次の文字を空白にするまでの遅延を設定します。
実行中のエフェクトのスクリーンショットは次のとおりです:
オンライン デモのアドレスは次のとおりです:
http://demo.jb51.net/js/2015/js-status-bar-scroll-show-codes/
具体的なコードは次のとおりです:
<html> <head> <SCRIPT LANGUAGE="JavaScript"> <!-- Begin var Message=" 欢迎光临脚本之家,请多多提出你的建议!!! "; //这里可自定义显示内容 var place=1; function scrollIn() { //这个函数用来显示消息 window.status=Message.substring(0, place); //根据place的值取当前需显示的字符串 if (place >= Message.length) { //如果全部信息已经显示完毕 place=1; //则将place重置 window.setTimeout("scrollOut()",300); //准备在300毫秒后收起显示 } else { //否则(信息还没有显示完) place++; //将需取的字符串长度计数器加一 window.setTimeout("scrollIn()",50); //准备下一次显示 } } function scrollOut() { //这个函数用来消隐消息 window.status=Message.substring(place, Message.length); //取Message右边的一定长度的字符串 if (place >= Message.length) { //如果已经无字符可取(信息已经完全消隐) place=1; //则初始化place window.setTimeout("scrollIn()", 100); //设定下一次操作是显示信息 } else { //否则(信息还没有消隐完毕) place++; //计数器加一 window.setTimeout("scrollOut()", 50); //设定消隐下一个字符的延时 } } // End --> </SCRIPT> <title>来回出现文字的状态栏特效</title> </head> <body onLoad="scrollIn()"> <b>请注意页面左下角的状态栏</b> </body>
この記事が JavaScript プログラミングのすべての人に役立つことを願っています。