妙!一个通知其它函数执行的函数,有意思 本帖最后由 moliu 于 2009-10-17 10:50:29 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 (function(func){func();})(function(){alert("ok");}) Function.intervalCall = function(funcs, interval, obj) { (function() { if (funcs.length < 1) return; funcs.shift().call(obj); setTimeout(arguments.callee, interval); })(); }; Function.linkageCall = function(funcs, obj) { (function() { if (funcs.length > 0) funcs.shift().call(obj, arguments.callee); })(); }; // 每格 3 秒执行一个 Function.intervalCall( [ function() { alert(1); } , function() { alert(2); } , function() { alert(3); } ], 3000 ); // 连环调 一个完就下一个 Function.linkageCall( [ function(over) { alert(1); over(); } , function(over) { alert(2); over(); } , function(over) { alert(3); over(); } ] ); //(function(){alert("ok");})() 和上面的等价//请 仔细讲讲上面的用法,看不大懂啊 这么写有什么好处吗???????func1(func2); 和直接 func2() 哪个看起来跟简单, 哪个执行效率更高.....传的是函数名 支持参数传递吗?????? function Item(){ this.name = null; var value = null; this.SetValue = function(newValue) { var valueChanged = newValue != value; value = newValue; if(valueChanged) this.OnValueChanged(value); } this.GetValue = function() { return value; } this.OnValueChanged = function(){}}var item1 = new Item();item1.OnValueChanged = function(){ alert('new Value is : ' + item1.GetValue());}item1.SetValue(1);item1.SetValue(2); 在初始化文档的时候要加载许多函数的时候经常这么做。如:window.onload=func1;window.onload=func2;//这样只能执行第二个函数,第二个函数已经把第一个覆盖了。window.onload=function(){func1();func2();}//这样就能执行两个了。 //(function(func){func();})//定义的函数 (function(){alert("ok");})//执行上面的函数,输入的参数,是另一个函数而已 pushlet在一个系统中有两个地方同时用到 js能否在图片上做标记?或有什么第三方类库可以调用? url正则表达式 javascript能否实现文字的旋转,我想文字沿着Y轴书写,可以吗? js获取json中指定数据的问题。 如何判断一个页面中是否存在id为layer1的层的存在 如何提前下载图片 ***.jpg怎么取得jpg,这三个字符? 这个问题你们会吗? 关于在js文件中嵌入php语句 有关div的问题 jquery设置 a标签的 状态栏文本 问题
(function(func){func();})(function(){alert("ok");})
Function.intervalCall = function(funcs, interval, obj) {
(function() {
if (funcs.length < 1) return;
funcs.shift().call(obj);
setTimeout(arguments.callee, interval);
})();
}; Function.linkageCall = function(funcs, obj) {
(function() {
if (funcs.length > 0) funcs.shift().call(obj, arguments.callee);
})();
}; // 每格 3 秒执行一个
Function.intervalCall(
[
function() { alert(1); }
, function() { alert(2); }
, function() { alert(3); }
],
3000
); // 连环调 一个完就下一个
Function.linkageCall(
[
function(over) { alert(1); over(); }
, function(over) { alert(2); over(); }
, function(over) { alert(3); over(); }
]
);
//请 仔细讲讲上面的用法,看不大懂啊
func1(func2); 和直接 func2() 哪个看起来跟简单, 哪个执行效率更高.....
传的是函数名 支持参数传递吗??????
function Item()
{
this.name = null;
var value = null;
this.SetValue = function(newValue)
{
var valueChanged = newValue != value;
value = newValue;
if(valueChanged) this.OnValueChanged(value);
}
this.GetValue = function() { return value; }
this.OnValueChanged = function(){}
}
var item1 = new Item();
item1.OnValueChanged = function()
{
alert('new Value is : ' + item1.GetValue());
}
item1.SetValue(1);
item1.SetValue(2);
如:window.onload=func1;
window.onload=func2;
//这样只能执行第二个函数,第二个函数已经把第一个覆盖了。
window.onload=function(){func1();func2();}
//这样就能执行两个了。
(function(){alert("ok");})//执行上面的函数,输入的参数,是另一个函数而已