1.window.onresize=new Function("window.location.reload()")
2.window.onresize=window.location.reload()
3.window.onresize=window.location.reload
这三种分别表示什么意思,有什么区别?
再具体一点,1情况下,resize事件发生,new出实例,调用reload(),这三个的顺序是什么样的?
2情况下,resize事件发生,reload()调用,这两个的顺序是什么样的?
3情况下,会不会调用reload()?
非常感谢
2.window.onresize=window.location.reload()
3.window.onresize=window.location.reload
这三种分别表示什么意思,有什么区别?
再具体一点,1情况下,resize事件发生,new出实例,调用reload(),这三个的顺序是什么样的?
2情况下,resize事件发生,reload()调用,这两个的顺序是什么样的?
3情况下,会不会调用reload()?
非常感谢
这个说得比较清楚
1.利用new Function做一些简化function的函数定义操作
window.onresize=new Function("window.location.reload()")
可理解为
window.onresize = function(e){
}
然后每次触发window.onresize函数都会这么触发window.onresize(window.location.reload())
对比下面的函数定义可能会清晰一点
var func = function(e){}
func(alert(1))//每次触发func函数都会执行alert语句。2.window.onresize=window.location.reload() 这个意思是window.onresize等于window.location.reload函数执行的结果,页面一载入就执行window.location.reload(),完后把返回值赋予window.onresize
相当于
var func2 = function(){return 1;}
var func1 = func2();
alert(func1);//弹出13,window.onresize=window.location.reload 这个意思是把window.location.reload这个函数赋予window.onresize
相当于
window.onresize = function(){window.location.href=window.location.href}
我的测试结果就是不会调用reload()
javascript有很多小把戏是真的,有时候以为对某个问题懂了一点,一个变态的写法出来,又要琢磨一下。