Autor | Zpráva | ||
---|---|---|---|
peta Profil |
#1 · Zasláno: 9. 2. 2007, 19:08:49
Mam funkci, treba
function aaa() {...} mam jinou funkci function bbb(a) {...} a ted volam bbb(aaa) cili predavam odkaz na pointer funkce. A ja bych ted potreboval v bbb() zjistis nazev funkce Ve FF existuje a.name (object.name) ale IE tuto metodu nepodporuje |
||
ah01 Profil |
#2 · Zasláno: 10. 2. 2007, 00:11:33
No, sice mě nenapadá žádný důvod, k čemu by to mohlo být dobré. To zmiňované a.name funguje jen za předpokladu, že fci. nadeklaruješ takto:
function aaa(){}v jiném případě var aaa = function (){}fungovat nebude. Máš asi tak 2 možnosti. Pro „přímou“ deklaraci by ti mělo fungovat (aaa.toString()).match( / něco ve smyslu ^function (w+) /)[1] Pro druhý případ, můžeš projít nadřazený objekt cyklem, a tak najít jméno té fce. A mimochodem „predavam odkaz na pointer funkce“ – to je pěknej nesmysl :-) |
||
peta Profil |
#3 · Zasláno: 10. 2. 2007, 10:06:02
ah01
Dik, ja to prave nechtel dramatizovat regularnim vyrazem. V podstate jsem to vyresil jinak. ajax.func=null funkce {... ajax.func=func; ajax.send} iframe.document...script parent.window.ajax.func(document) k cemu je to dobre, mam funkci: ajax.send(url,arg,func) ajax.send('./aaa.php','a=4',alert) vysledek se mi zobrazi v alert(vysledek) tohle funguje pro funkci, co mam XHTMLrequest. Ale protoze request nemusi fungovat, tak jsem pridelaval iframovou alternativu http://mracek.hostuju.cz/x/chatAI.rar ktera vytvori iframe, vytvori v nem inputy a iframe odesle GET/POST. Problem je ovsem s navratovou funkci. kdyz zavesim funkci na document.onload , tak mi to zpracuje puvodni formular. Kdyz odeslu formular a hned po tom dam document.onload, tak je to totez, nebo prazdny formular. Takze jsem si vybral jinou alternativu, odeslu navratovou funkci jako jeden z inputu. Ale jak, kdyz mam jen jeji pointer? Tak zkusim funkce.name a ouvej, pouze FF. Ale ted jsem to vyresil tak, ze jsem pointer presunul do promenne ajax.func , kterou pak zavolam scriptem na konci XML odpovedi SRIPT parent.window.ajax.func a tim docilim stejneho efektu jako ajax.func(TEXTresponse) |
||
Časová prodleva: 17 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0