JavaScript(jQuery含む)の勉強をしながらFirefox OS用アプリを開発しているのですが、行き詰まったので助けてください。
DIVの中の文字をすべて拾い上げて、指定した別のDIVにテキストを1文字ずつ表示させるアニメーションを作っています。
lang
1#cont{ 2 z-index:1; 3 position:absolute; 4 top:0; 5} 6 7#sauce{ 8 z-index:0; 9 visibility:hidden; 10 position:absolute; 11 top:0; 12}
lang
1<!--下の「#sauce」をここに1文字ずつ表示させたいです--> 2<div id="cont"> 3</div> 4 5<!--こちらはvisibility:hidden;になっています--> 6<div id="sauce"> 7#!/bin/bash<br> 8hoge hoge hoge 9</div>
とありまして、DIV「#sauce」の内容が長いのでこういう変な書き方をしています。
lang
1<script> 2$(document).ready(function(){ 3 var numLength=0;//文字の長さ 4 var totalNum=$("#sauce").html().length;//テキスト全部の長さ 5 6 function display(){ 7 var configText=$("#sauce").html();//DIV「sauce」の中身を取得 8 if(numLength <= totalNum){//テキストの終わりまで表示 9 var pickupText=configText.substr(0, numLength);//文字数を指定して抽出 10 $("#cont").html(pickupText);//DIV「cont」に表示 11 numLength++; 12 }else{ 13 return; 14 } 15 } 16 17 setTimeout(function(){ 18 display(true); 19 }, 500); 20}); 21</script>
これでエラーは出ていません。
「numLength」を変数ではなくて「100」と入力すると、一応100文字は表示されます。
ただしアニメーションにはなりません。
どこが間違っているのか、色々試したのですがわからず、ヒントだけでも頂けないでしょうか。
よろしくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2015/05/05 13:59
2015/05/05 14:14