var Drag = { obj : null,
init : function()
{ o.onmousedown = Drag.start;
.........................
.........................
.........................
o.root.onDragStart = new Function();
},
start : function(e)
{ ...................
...................
o.root.onDragStart(x, y);
},
drag : function(e)
{
},
end : function()
{
},
fixE : function(e)
{
}
};从外部导入js文件.这是js文件的主干写法,这种写法中Drag中的变量obj是全局变量,函数中的变量是局部变量???
当我在自己写的函数调用onDragStart函数时,为什么o.root.onDragStart= function(x, y) {},
就能把o.root.onDragStart(x, y);中的值传给function(x, y) {}中的参数??????
init : function()
{ o.onmousedown = Drag.start;
.........................
.........................
.........................
o.root.onDragStart = new Function();
},
start : function(e)
{ ...................
...................
o.root.onDragStart(x, y);
},
drag : function(e)
{
},
end : function()
{
},
fixE : function(e)
{
}
};从外部导入js文件.这是js文件的主干写法,这种写法中Drag中的变量obj是全局变量,函数中的变量是局部变量???
当我在自己写的函数调用onDragStart函数时,为什么o.root.onDragStart= function(x, y) {},
就能把o.root.onDragStart(x, y);中的值传给function(x, y) {}中的参数??????
是定义一个函数啊,
o.root.onDragStart(x, y);
就是调用函数函数定义方法
var x = function(xx,yy){}跟
function xx(xx,yy){}类似参见
http://software.intel.com/zh-cn/articles/javascript-first-class-citizen-function/?cid=sw:prccsdn229032
已经在dom-drag.js被调用,外部这样写o.root.onDragStart= function(x, y){}只是为了引用内部调用的参数,就像事件中document.onmouseover=function(e){}这儿的e在事件发生时,就被赋值了。