Det er måske nemt for jer der kan det, men jeg kan stadig ikke få det til at virke...
Dette link fra samme frame virker: <a href=\"#\" onclick=\"CSAction(new Array(/*CMP*/\'10DDB6550\'));return CSClickReturn();\" csclick=\"10DDB6550\">Action</a>
Den skal starte fra frame \"top\" og virke i \"body\", skulle denne string så ikke virke? -
-------------------------------------- OG HER DEN BODY SOM SKAL AKTIVERES - jEG ØNSKER AT FLYTTE MIT LAYER NED.... --------------------------------------
function CSAction(array) { return CSAction2(CSAct, array); } function CSAction2(fct, array) { var result; for (var i=0;i<array.length;i++) { if(CSStopExecution) return false; var actArray = fct[array[i]]; if(actArray == null) return false; var tempArray = new Array; for(var j=1;j<actArray.length;j++) { if((actArray[j] != null) && (typeof(actArray[j]) == \"object\") && (actArray[j].length == 2)) { if(actArray[j][0] == \"VAR\") { tempArray[j] = CSStateArray[actArray[j][1]]; } else { if(actArray[j][0] == \"ACT\") { tempArray[j] = CSAction(new Array(new String(actArray[j][1]))); } else tempArray[j] = actArray[j]; } } else tempArray[j] = actArray[j]; } result = actArray[0](tempArray); } return result; } CSAct = new Object; CSAg = window.navigator.userAgent; CSBVers = parseInt(CSAg.charAt(CSAg.indexOf(\"/\")+1),10); function IsIE() { return CSAg.indexOf(\"MSIE\") > 0;} function CSIEStyl(s) { return document.all.tags(\"div\")[s].style; } function CSNSStyl(s) { return CSFindElement(s,0); } function CSFindElement(n,ly) { if (CSBVers < 4) return document[n]; var curDoc = ly ? ly.document : document; var elem = curDoc[n]; if (!elem) { for (var i=0;i<curDoc.layers.length;i++) { elem = CSFindElement(n,curDoc.layers[i]); if (elem) return elem; }} return elem; } function CSSetStylePos(s,d,p) { if (IsIE()) { if (d == 0) CSIEStyl(s).posLeft = p; else CSIEStyl(s).posTop = p; } else { if (d == 0) CSNSStyl(s).left = p; else CSNSStyl(s).top = p; } } function CSGetStylePos(s,d) { if (IsIE()) { if (d == 0) return CSIEStyl(s).posLeft; else return CSIEStyl(s).posTop; } else { if (d == 0) return CSNSStyl(s).left; else return CSNSStyl(s).top; }} CSLoopIsRunning = false; CSFctArray = new Array; CSTimeoutID = null; function CSLoop() { CSLoopIsRunning = false; for (i=0;i<CSFctArray.length;i++) { var curFct = CSFctArray[i]; if (curFct) { if (curFct.DoFunction(curFct)) { CSLoopIsRunning = true; curFct.counter++; } else CSFctArray[i] = 0; } } if (CSLoopIsRunning) CSTimeoutID = setTimeout(\"CSLoop()\", 1); } function CSStartFunction(fct,data) { if (!CSLoopIsRunning) { CSFctArray = 0; CSFctArray = new Array; } var fctInfo = new Object; fctInfo.DoFunction = fct; fctInfo.counter = 0; fctInfo.data = data; CSFctArray[CSFctArray.length] = fctInfo; if (!CSLoopIsRunning) CSLoop(); } function CSStopFunction(sceneName) { var i; for (i=0;i<CSFctArray.length;i++) { var curFct = CSFctArray[i]; if (curFct){ if (curFct.data.name == sceneName){ CSFctArray[i] = 0; return; } } } } function CSStopComplete() { if (CSTimeoutID == null) return; clearTimeout (CSTimeoutID); CSLoopIsRunning = false; CSTimeoutID = null; } function CSMoveLoop(fInf) { var ticks = 60 * (((new Date()).getTime()) - fInf.data.startTime)/1000; var f = ticks/fInf.data.ticks; if (f < 1) { CSSetStylePos(fInf.data.layer,0,fInf.data.start[0] * (1-f) + fInf.data.end[0] * f); CSSetStylePos(fInf.data.layer,1,fInf.data.start[1] * (1-f) + fInf.data.end[1] * f); return true; } else { CSSetStylePos(fInf.data.layer,0,fInf.data.end[0]); CSSetStylePos(fInf.data.layer,1,fInf.data.end[1]); } return false; } function CSSlideObj (layer,start,end,ticks,startTime) { this.layer=layer;this.start=start;this.end=end;this.ticks=ticks;this.startTime=startTime; } function CSSlideLayer(l,pos,anim,ticks) { var x = pos[0]; var y = pos[1];
if (l == \'\') return; if (!anim) { CSSetStylePos(l,0,x); CSSetStylePos(l,1,y); } else { var fctData = new CSSlideObj(l,new Array(CSGetStylePos(l,0),CSGetStylePos(l,1)),new Array(x,y),ticks,(new Date()).getTime()); CSStartFunction(CSMoveLoop,fctData); } }
function CSMoveTo(action) { CSSlideLayer(action[1],action[2],action[3],action[4]); } function CSCallAction(action) { CSAction(new Array(action[1])); } function CSMoveBy(action) { x = CSGetStylePos(action[1], 0); y = CSGetStylePos(action[1], 1); x += parseInt(action[2]); y += parseInt(action[3]); x = CSSetStylePos(action[1], 0, x); y = CSSetStylePos(action[1], 1, y); }
// --></script> </csscriptdict> <csactiondict> <script><!-- CSInit[CSInit.length] = new Array(CSMoveBy,/*CMP*/ \'layer\',1,-252); CSAct[/*CMP*/ \'skaerm_ned\'] = new Array(CSMoveTo,/*CMP*/ \'layer\',new Array(1,-5),true,30); CSAct[/*CMP*/ \'1028CFBF1\'] = new Array(CSCallAction,/*CMP*/\'skaerm_ned\'); CSAct[/*CMP*/ \'skaerm_op\'] = new Array(CSMoveTo,/*CMP*/ \'layer\',new Array(1,-252),true,30); CSAct[/*CMP*/ \'10DDB6550\'] = new Array(CSCallAction,/*CMP*/\'skaerm_ned\');
FYR den AF! Jeg troede at det var et helt andet problem. Jeg kan se at du definerer nogle nye klasser og en masse. Det har jeg desværre ikke lige styr på.
Jamen, så vil \'det heldige asen\' da lige nappe de nemme 350 :o))
Du skriver i top-dokumentet: <a href=\"#\" onclick=\"parent.body.CSAction(new Array(/*CMP*/\'1028CFBF1\'));return parent.body.CSClickReturn();\">RUN MY ACTION</a> ...det er det hele. /Vh
GoLive skriver altid en ordentlig gang KlasserOgJegSkalGiDigSkalJeg pŒ st¿rrelse med Boligloven incl. till¾g for at udf¿re de simpleste ting. SŒdan er det tit med WYSIWYG-programmer - de bliver n¿dt til at helgardere alle mulige tilf¾lde, da brugeren af programmet foruds¾ttes ikke at kunne noget om scripting. Du beh¿ver ingen ekstra installationer i klient-browseren for at l¾se siderne. /Vh
Det fungerer perfekt! Du får med glæde de 350 point. Tak for hjælpen.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.