I have the following javascript in MSIE:
setTimeout(myFunction, 1000, param );
this seems to work in all browsers except internet explorer. the param just doesnt get forwarded to the function. looking at the debugger, it is undefined.
param
in Internet explorer specifies whether the code in myFunction
is JScript, JavaScript or VBscript See also: MSDN. It does not behave like other browsers.
The following will work:
setTimeout(function() {
myFunction(param);
}, 1000);
The previous line does not exactly mimic setTimeout
in Firefox etc. To pass a variable, unaffected by a later update to the param
variable, use:
setTimeout( (function(param) {
return function() {
myFunction(param);
};
})(param) , 1000);