TARMAQ: Nezavoláš si třeba eval...
tady je boostarepper co to zavádí, vidíš jaký věci jsou dostupný
fbjs_sandbox.prototype.bootstrap = function() {
if (!this.bootstrapped) {
var appid = this.appid;
var code = [
'a', appid, '_Math = new fbjs_math();',
'a', appid, '_Date = fbjs_date();',
'a', appid, '_String = new fbjs_string();',
'a', appid, '_RegExp = new fbjs_regexp();',
'a', appid, '_Ajax = fbjs_ajax(', appid, ');',
'a', appid, '_Dialog = fbjs_dialog(', appid, ');',
'a', appid, '_Facebook = new fbjs_facebook(', appid, ');',
'a', appid, '_Animation = new fbjs_animation();',
'a', appid, '_LiveMessage = new fbjs_livemessage(', appid, ');',
'a', appid, '_document = new fbjs_main(', appid, ');9,
'a', appid, '_undefined = undefined;',
'a', appid, '_console = new fbjs_console();',
'a', appid, '_setTimeout = fbjs_sandbox.set_timeout;',
'a', appid, '_setInterval = fbjs_sandbox.set_interval;',
'a', appid, '_escape = escapeURI;',
'a', appid, '_unescape = unescape;'
];
for (var i in {
clearTimeout: 1,
clearInterval: 1,
parseFloat: 1,
parseInt: 1,
isNaN: 1,
isFinite: 1
}) {
code = code.concat(['a', appid, '_', i, '=', i, ';']);
}
eval(code.join(''));
}
a vzhledem k tomu, že to trochu mění DOM nepůjde žádná knihovna co manipuluje s DOMem a Ajax je použitej taky jinej, takže ani taková knihovna nepůjde
// come code omitted for clarity
this.bootstrapped = true;
}