document.createElement('script');
object[n[i]] = function ed() { alert() }
var sc = document.createElement('script');
sc.innerHTML = object[n[i]];
document.head.appendChild(sc);
sc.onload = ed(); // если string то не работает
sc.onload = 'как здесь указать марк функции в строковом представлении, чтобы срабатывало '
|
ed() = object.slice(7, 11)
script.onload = object.slice(7, 11) дело в том что так не срабатывает фунция а если в коде прописан марк функции script.onload = ed() то срабатывает допустим var functio = 'ed()'; script.onload = functio и не работает |
Цитата:
Conus, правильно будет так: sc.onload = ed; //ссылка на функцию, но никак не её вызов |
а как сделать вызов из строки
|
Цитата:
|
var n = Object.keys(object).sort(function (key) { return object[key] })
for(i in n)
{
if(typeof(object[n[i]]) == 'function')
{
if(n[i] != 'one') { e.setAttribute(n[i], 'new Function'); e.Function = object[n[i]]; }
else
{
var v = '', x = '' + object[n[i]];
for (c in x)
{
v = x.slice(c, (x.length- 1));
if(x[c] == ' ') { for(var q in v) { if(v[q] == ')') { q++; v = v.slice(0, q); break; } } break; }
}
var sc = document.createElement('script');
sc.innerHTML = object[n[i]];
document.head.appendChild(sc);
sc.onload = ed;
sc.onload = v // this = я себе не представляю!
}
}
|
Напиши ВСЕГО 1 СТРОЧКУ:
1. Строка с функцией. |
какую строчку
мне из объекта вытянуть нужно функцию и вызвать её же после добавления в head как сделать вызов? |
Цитата:
Цитата:
Сначала ты пишешь про строку, потом уже отрицаешь это. Думаю, что я после долгих раздумий понял, что ты имеешь ввиду:
object[n[i]] = "function ed(){alert('test')}" //строка
var sc = document.createElement('script');
sc.text = object[n[i]];
document.head.appendChild(sc);
sc.onload = ed;
|
| Часовой пояс GMT +3, время: 03:04. |