WEB相談室

Webページ作成に関しての何でも掲示板です。

タイトル:javascript 3文字づつ表示

0:[投稿] あゆふぁん [2007/07/08 21:27 ] [環境:IE6 わからない]

はじめまして、あゆふぁんといいます。
お世話になります。
123456789の数字を
123→456→789と表示させたいのですが、うまくいきません。
間違いをご指摘頂ければ助かります。よろしくお願いします。

var vStr3="123456789";
i=-3;
i3=i+3;
function Start(){
   if(i3++<vStr3.length)
   if(document.all){ myText.innerHTML = vStr3.substr(i3,3);
    setTimeout("Start()",200);}


よろしく御願いいたします。


1:[回答] tk [2007/07/08 23:56 ]

if(i3++<vStr3.length)
はi3とvstr3.lengthを評価したあと、i3=i3+1しています。[123→456→789]こうはならない。
以下の感じで


var vStr3="123456789";
var i=-3;
var i3=i+3;
function start(){

if(i3<vStr3.length) {
myText.innerHTML = vStr3.substr(i3,3);
i3+=3;
setTimeout("start()",200);
}
}


2:[質問] あゆふぁん [2007/07/09 22:49 ]

TKさん、ありがとうございました。本当に、助かりました。
感謝です。うまくできました。i3+=3; がポイントですね。
ついでに、質問して恐縮ですが、1行で書き出す場合は、
123→456→789で、できましたが、2行で書き出した場合

123456
abcdef  ⇒ 123→456→789→a→bcd→ef になってしまいます。
どこをいじくったらよろしいでしょうか?
よろしく、お願い致します。 


3:[完了] あゆふぁん [2007/07/10 07:10 ]

独自解決いたしました。改行コードのせいでした。

回答(必須): 状態:

お名前(必須):

URL:




[戻る]