var forEach = function(array, callback, thisObject){
if(array.forEach){
array.forEach(callback, thisObject);
}else{
for (var i = 0, len = array.length; i < len; i++) { callback.call(thisObject, array[i], i, array); }
}
}
forEach(nums, function(o, i){
o.onmouseover = function(){ o.className = "on"; st.Auto = false; st.Run(i); }
o.onmouseout = function(){ o.className = ""; st.Auto = true; st.Run(); }
})这些代码是什么意思,高手帮忙解释一下

解决方案 »

  1.   


    array.forEach是js core1.6开始的属性.FF下支持.IE不支持,上面你的那个是写的IE的扩展.
    forEach(nums, function(o, i){
        o.onmouseover = function(){ o.className = "on"; st.Auto = false; st.Run(i); }
        o.onmouseout = function(){ o.className = ""; st.Auto = true; st.Run(); }
    })意思就是将nums这个数组的元素循环以O这个参数传入, i就是nums的索引
      

  2.   

    为array数组中的所有元素加上onmouseover和onmouseout样式及st.Run(i)方法
      

  3.   

    array.forEach是js core1.6开始的属性.FF下支持.IE不支持?
    看来本人落伍了,呵呵。现在还在学习1.5及其以前版本
    都不知道1.6是什么时候出来的,加紧学习!!!
      

  4.   

    这个foreach函数实现一个数组遍历的方法。
    它需求2个参数,参数1传入一个数组,参数2传入一个回调函数。
    对于数组中的每一个元素,执行回调函数处理这个元素。
    回调函数被给予2个参数,参数o是数组中的其中一个元素,参数i是数组下标。jquery中有类似实现,你可以查阅 jquery参考:$.each