http://realazy.org/lab/settimeout.html
见这个网页里的例子3,在文本框里输入abcdef会发现后面的预览款里总是只显示上次录入的结果,没有做到完全同步将代码修改成
get('input').onkeypress = function(){

    var preview = get('preview');
    var vl = this.value;
    setTimeout(function(){
preview.innerHTML = vl;
},0);
}本希望这样能可以,但是还不行,有些不解,那位知道为什么,应该怎么写呢?
原文地址参考:http://www.blueidea.com/tech/web/2008/5696.asp

解决方案 »

  1.   

    不会吧 ,我用Firefox和IE8都测试过了 ,是同步的 ,输入完后按下回车健就完全同步了。
      

  2.   

    get('input').onkeyup = function() { ... };
      

  3.   

    get('input').onkeypress = function(){

        var preview = get('preview');
        setTimeout(function(){
    preview.innerHTML = get('input').value;
    },0);
    }这样就可以了,楼上各位好像都没看明白这个问题的本意
    简单的说,就是如何在onkeypress事件里触发同步preview的内容。必须用settimeout才能实现。
      

  4.   

    楼上正解
    get('input').onkeyup = function(){
        var preview = get('preview');
        var vl = this.value;
        setTimeout(function(){
            preview.innerHTML = vl;
        },0);
    }