循环遍历数组/函数时的换行符

时间:2014-10-02 19:12:03

标签: javascript jquery line-breaks

看似简单但我无法找到正确的位置。我的HTML头中有以下功能:

<script>
(function($) {
    $.fn.writeText = function(content) {
        var contentArray = content,
            current = 0,
            elem = this;
        setInterval(function() {
            if(current < contentArray.length) {
                elem.text(elem.text() + contentArray[current++]);                
            }
        }, 1000);
    };    
})(jQuery); 
</script>

我在身体上称它为:

<script>
// test getArray() method in external JS file
document.write(getArray());
$(document).ready(function($){      
    var contentArray = getArray();
    $('#calculations').writeText(contentArray);
}); 
</script>
<h3>Fibonacci Sequence:</h3>
<p id='calculations'></p>   

我无法找到放置&#39; + br /&#39;的位置。将每个writeText与换行符连接起来。

2 个答案:

答案 0 :(得分:2)

使用换行符有点不合时宜。这是一个附加段落标记的脚本。

$(function() {      
    var contentArray = ['first', 'second', 'third'],
        iContent = 0;

    function showContent() {
        $('#calculations').append('<p>' + contentArray[iContent] + '</p>');
        if (iContent < contentArray.length - 1) {
            window.setTimeout(function () {showContent(); }, 1000);
            iContent = iContent + 1;
        }
    }

    window.setTimeout(function () {showContent(); }, 1000);
});

你也不需要

$(document).ready(

一个简单的$(会做同样的。你为什么要在代码中做一个document.write()?如果你只想查看数组值,console.log()会更好。

答案 1 :(得分:0)

我正在疯狂地抨击我认为你要做的事情,但如果我是正确的,这不会有效吗?

$('#calculations').html(getArray().join('<br>'));

我也不会把JS放在你的文档的头上。把它放在身体标签的末尾。