Элемент браузера имеет атрибут onpopupshowing, который представляет собой строку, состоящую из нескольких операторов javascript.
Я хочу "переопределить" этот бит javascript.
Была ли это функция, яЯ бы просто присвоил ее переменной, назначил мою «переопределяющую» функцию атрибуту элемента и (при необходимости) вызвал исходную функцию из моей переопределяющей, примерно так:
var oldfunc;
function myoverrridingfunc () { my statement; oldfunc(); my other statement; }
oldfunc = element.getAttribute( "onpopupshowing" )
element.setAttribute( "onpopupshowing", myoverrridingfunc );
, ноelement.getAttribute ("onpopupshowing") не функция, это строка.
Я мог бы использовать объект Function, чтобы превратить строку в функцию, но строка содержит ссылки на this
.Как мне сохранить право this
?
Каков наилучший способ перехвата / переопределения этого фрагмента сценария?Примечание: это должно работать только в Firefox, а не в любой версии java / ECMAscript.
Спасибо.