På följande sida kör man utan fnuttar när man använder funktioner:
https://developer.mozilla.org/en/DOM/window.setTimeout
Här är ett exempel på en kod som inte ger fel men som har fnuttar, och dessutom inte är beroende av någon variabel (den exekverar funktionen direkt):
Kod:
/*
*
*
*/
(function($) {
$.fn.memorize = function(classes, hidden, q) {
classes.sort(function() {return 0.5 - Math.random()});
classes = classes.slice(0, 8);
classes = classes.concat(classes);
classes.sort(function() {return 0.5 - Math.random()});
for(var i=0; i<q*2; i++) {
this.prepend('<li><div class="'+classes[i]+'"></div></li>');
};
this.find('li div').addClass(hidden).click(function() {
$(this).removeClass(hidden).addClass('open');
function hideit(el) {
el.removeClass('pending').addClass(hidden);
}
if($('.open').length>1) {
var el = $('.pending');
el.removeClass('open').addClass('pending');
window.setTimeout("hideit($('.pending'))", 2000);
}
});
return this;
};
})(jQuery);