本帖最后由 wuyulin0903 于 2013-09-29 12:12:44 编辑

解决方案 »

  1.   

    notify_song_dl_info 是不是 多次异步执行,如果是  以最后一次的值 
    你不要用 alert 测试 用 控制台输出 console.log(  s[1] )
      

  2.   


    十多次调用,但应该不是异步的,我用setTimeout延时后运行ifelse的代码,结果还是一样;
    还有一个比较奇怪的就是alert得到的值正确,console.log不正确
      

  3.   

    那应该是你 调用   notify_song_dl_info(info) 的   打开方式不对了  :)
    贴一下你怎么一循环调用 
      

  4.   

    可能是调试得还不够仔细吧,alert 的时候时间仍然在走的,也许此时某些东西已经改变了。
      

  5.   

    alert()起到挂起作用,结果出现不一是很正常的。
    倒是你的代码可以改进一下:    function notify_song_dl_info(info){
            var s = info.split(":");
            var arr=["","未下载","已下载","下载中","等待中"];
            $("#song_state_"+s[0]).html(arr[s[1]]);
        }