Beiträge von 00eraser00

    hi

    kann man nen iframe so aufbauen

    <iframe id="frame">text</iframe> ?

    wenn dies nicht geht, wie muß beim html link also target="..." den value für target schreiben, damit das ergebnis in einem speziellen div steht?

    <div id="test"></div>

    und dann diesen div container per <a href"..." target="test"> wie müßte das aussehen?

    danke schonmal, das ist prinzipiell nicht schlecht
    ich suche aber ein wo nicht nur die unterpunkte checkboxen sind, sondern auch die überschriften, so dass beim anklicken einer checkbox automatisch alle unterpunkte mit angeklickt werden

    hat da jemand nen tipp bzw. link?

    Hi kann man max und count kombinieren?

    Also ich habe ein Ergebnis, der Art, dass pro Kalenderwoche angezeigt wird wie oft jeder Nutzer online war. Ich möchte nun eine Abfrage schreiben, die mir sagt, wer am meisten online war.

    Über nen Tipp wäre ich seeeehr dankbar.

    Hi ich möchte folgende Abfrage erzeugen:

    ich habe folgende daten:

    nutzerid, sessiondate in der tabelle "daten"

    da steht drin, welcher nutzer wann online war
    ich möchte ne abfrage haben, welche mir ausgibt, welcher nutzer zuletzt pro kalenderwoche online war, also ergebnis in der art:

    kalenderwoche 12: nutzer: hans
    kalenderwoche 13: nutzer: hubert
    ...

    wie würdet ihr das am besten machen? kriege die gruppierung in kalenderwochen nicht hin, das datumsformat, also sessiondate sieht so aus: 2006-10-03 18:00:22.0

    ich habe einige tools gefunden, aber die meisten sind so gestaltet, dass man fast alles selbst programmieren muß
    ich suche halt etwas, welches das einloggen auf einer seite testet und dann einige funktionen auf dieser, suchen usw. z.b
    wär cool, wenn mir noch jemand einen tip geben könnte

    Hi, ich suche möglichst kostenlose Software, um Web Applikationen zu testen.
    D.h. das Tool soll sich durch das Programm klicken und halt alle möglichen Funktionalitäten testen.

    Kennt jemand solch ein Tool?

    Vielen Dank schonmal im voraus für eure Tipps.

    Hi ich habe folgenden Code:

    $link = mysql_connect("127.0.0.1:3307", "root", "root") or die("Keine Verbindung möglich: " . mysql_error());
    mysql_select_db("server") or die("Auswahl der Datenbank fehlgeschlagen");

    /* ausführen einer SQL Anfrage */
    $query = "SELECT Name FROM liste";
    $result = mysql_query($query) or die("Anfrage fehlgeschlagen: " . mysql_error());
    $wert= "SELECT Link FROM liste WHERE ID=1";
    $wert2 = mysql_query($wert) or die("Anfrage fehlgeschlagen: " . mysql_error());

    /* Ausgabe der Ergebnisse in HTML */
    echo "<div id='map'>
    <ul>";
    $i=1;
    while ($line = mysql_fetch_array($result, MYSQL_ASSOC)){
    foreach ($line as $col_value){
    echo "[*]$col_value";
    echo "$wert2";
    $i=$i+1;
    }
    }
    echo "[/list]</div><div id='pfeil' style='display:none'></div>";

    Ich möchte, dass das Ergebnis der Abfrage "SELECT Link FROM liste WHERE ID=1" als String an die Stelle onclick='laden ... ' gesetzt wird, also da wo die drei puntke sind
    wie mache ich das am besten?

    Hi, ich möchte folgendes machen und würde mich sehr freuen wenn ihr mir Tipps oder Links zur Lösung geben könntet.

    Ich habe eine html Seite auf der ich per Formular Daten eingeben möchte. Also als Beispiel: Name, Alter, usw..
    Diese daten möchte ich in eine csv oder txt datei speichern.
    Des weiteren möchte ich diese daten in einem div container darstellen lassen.
    also einfach formuliert, zeige in div container 1, die informationen zu hans peter und lese diese aus der csv datei

    aktuell habe ich eine liste und wenn man auf nen namen klickt erscheint ein div container mit dem inhalt zu dem gewählten menüpunkt, dieses habe ich mit javascript umgesetzt und das fkt. auch prima
    nun will ich halt dass man die liste und den dazugehörigen inhalt selbst über formulareingaben erweitern kann

    wie geht das am besten? mag es mit php umsetzen
    ich hoffe ich habe das problem einigermaßen verständlich formuliert

    Hi, ich möchte die Daten aus einer txt Datei lesen und in deinem Div Container darstellen lassen, habe es folgendermaßen probiert, aber da zeigt er nix an.

    <div class="serverschatten" id="1" style="display:none">
    <div class="server" id="11">

    <?php
    $fp = @ fopen("server1.txt", "r");
    while (! feof( $fp )) {
    $zeile = fgets( $fp , 4096);
    $zeile = chop( $zeile );
    if ( $zeile != "") {
    echo $zeile . "
    ";
    }
    }
    fclose( $fp );
    ?>

    </div>

    <div id="close">

    </div>

    </div>

    Wo ist der Fehler?

    danke erstmal für die antwort, habe das über visibility gelöst geht auch, habe nun das problem, dass er zuerst den ausblend effekt macht, ich will aber das er zuerst einblendet, hier mal das javascript dafür, was muß ich da wo ändern, dass er das element zu erst einblendet

    // script.aculo.us effects.js v1.8.0_pre1, Fri Oct 12 21:34:51 +0200 2007

    // Copyright (c) 2005-2007 Thomas Fuchs (http://script.aculo.us, http://mir.aculo.us)
    // Contributors:
    // Justin Palmer (http://encytemedia.com/)
    // Mark Pilgrim (http://diveintomark.org/)
    // Martin Bialasinki
    //
    // script.aculo.us is freely distributable under the terms of an MIT-style license.
    // For details, see the script.aculo.us web site: http://script.aculo.us/

    // converts rgb() and #xxx to #xxxxxx format,
    // returns self (or first argument) if not convertable

    String.prototype.parseColor = function() {
    var color = '#';
    if (this.slice(0,4) == 'rgb(') {
    var cols = this.slice(4,this.length-1).split(',');
    var i=0; do { color += parseInt(cols[i]).toColorPart() } while (++i<3);
    } else {
    if (this.slice(0,1) == '#') {
    if (this.length==4) for(var i=1;i<4;i++) color += (this.charAt(i) + this.charAt(i)).toLowerCase();
    if (this.length==7) color = this.toLowerCase();
    }
    }
    return (color.length==7 ? color : (arguments[0] || this));
    };

    /*--------------------------------------------------------------------------*/

    Element.collectTextNodes = function(element) {
    return $A($(element).childNodes).collect( function(node) {
    return (node.nodeType==3 ? node.nodeValue :
    (node.hasChildNodes() ? Element.collectTextNodes(node) : ''));
    }).flatten().join('');
    };

    Element.collectTextNodesIgnoreClass = function(element, className) {
    return $A($(element).childNodes).collect( function(node) {
    return (node.nodeType==3 ? node.nodeValue :
    ((node.hasChildNodes() && !Element.hasClassName(node,className)) ?
    Element.collectTextNodesIgnoreClass(node, className) : ''));
    }).flatten().join('');
    };

    Element.setContentZoom = function(element, percent) {
    element = $(element);
    element.setStyle({fontSize: (percent/100) + 'em'});
    if (Prototype.Browser.WebKit) window.scrollBy(0,0);
    return element;
    };

    Element.getInlineOpacity = function(element){
    return $(element).style.opacity || '';
    };

    Element.forceRerendering = function(element) {
    try {
    element = $(element);
    var n = document.createTextNode(' ');
    element.appendChild(n);
    element.removeChild(n);
    } catch(e) { }
    };

    /*--------------------------------------------------------------------------*/

    var Effect = {
    _elementDoesNotExistError: {
    name: 'ElementDoesNotExistError',
    message: 'The specified DOM element does not exist, but is required for this effect to operate'
    },
    Transitions: {
    linear: Prototype.K,
    sinoidal: function(pos) {
    return (-Math.cos(pos*Math.PI)/2) + 0.5;
    },
    reverse: function(pos) {
    return 1-pos;
    },
    flicker: function(pos) {
    var pos = ((-Math.cos(pos*Math.PI)/4) + 0.75) + Math.random()/4;
    return pos > 1 ? 1 : pos;
    },
    wobble: function(pos) {
    return (-Math.cos(pos*Math.PI*(9*pos))/2) + 0.5;
    },
    pulse: function(pos, pulses) {
    pulses = pulses || 5;
    return (
    ((pos % (1/pulses)) * pulses).round() == 0 ?
    ((pos * pulses * 2) - (pos * pulses * 2).floor()) :
    1 - ((pos * pulses * 2) - (pos * pulses * 2).floor())
    );
    },
    spring: function(pos) {
    return 1 - (Math.cos(pos * 4.5 * Math.PI) * Math.exp(-pos * 6));
    },
    none: function(pos) {
    return 0;
    },
    full: function(pos) {
    return 1;
    }
    },
    DefaultOptions: {
    duration: 1.0, // seconds
    fps: 100, // 100= assume 66fps max.
    sync: false, // true for combining
    from: 0.0,
    to: 1.0,
    delay: 0.0,
    queue: 'parallel'
    },

    tagifyText: function(element) {
    var tagifyStyle = 'position:relative';
    if (Prototype.Browser.IE) tagifyStyle += ';zoom:1';

    element = $(element);
    $A(element.childNodes).each( function(child) {
    if (child.nodeType==3) {
    child.nodeValue.toArray().each( function(character) {
    element.insertBefore(
    new Element('span', {style: tagifyStyle}).update(
    character == ' ' ? String.fromCharCode(160) : character),
    child);
    });
    Element.remove(child);
    }
    });
    },
    multiple: function(element, effect) {
    var elements;
    if (((typeof element == 'object') ||
    Object.isFunction(element)) &&
    (element.length))
    elements = element;
    else
    elements = $(element).childNodes;

    var options = Object.extend({
    speed: 0.1,
    delay: 0.0
    }, arguments[2] || { });
    var masterDelay = options.delay;

    $A(elements).each( function(element, index) {
    new effect(element, Object.extend(options, { delay: index * options.speed + masterDelay }));
    });
    },
    PAIRS: {
    'slide': ['SlideDown','SlideUp'],
    'blind': ['BlindDown','BlindUp'],
    'appear': ['Appear','Fade']
    },

    toggle: function(element, effect) {
    var weg = document.getElementById(element);
    weg.style.visibility="visible";
    element = $(element);
    effect = (effect || 'appear').toLowerCase();
    var options = Object.extend({
    queue: { position:'end', scope:(element.id || 'global'), limit: 1 }
    }, arguments[2] || { });
    Effect[element.visible() ?
    Effect.PAIRS[effect][1] : Effect.PAIRS[effect][0]](element, options);
    }
    };

    Effect.DefaultOptions.transition = Effect.Transitions.sinoidal;

    /* ------------- core effects ------------- */

    Effect.ScopedQueue = Class.create(Enumerable, {
    initialize: function() {
    this.effects = [];
    this.interval = null;
    },
    _each: function(iterator) {
    this.effects._each(iterator);
    },
    add: function(effect) {
    var timestamp = new Date().getTime();

    var position = Object.isString(effect.options.queue) ?
    effect.options.queue : effect.options.queue.position;

    switch(position) {
    case 'front':
    // move unstarted effects after this effect
    this.effects.findAll(function(e){ return e.state=='idle' }).each( function(e) {
    e.startOn += effect.finishOn;
    e.finishOn += effect.finishOn;
    });
    break;
    case 'with-last':
    timestamp = this.effects.pluck('startOn').max() || timestamp;
    break;
    case 'end':
    // start effect after last queued effect has finished
    timestamp = this.effects.pluck('finishOn').max() || timestamp;
    break;
    }

    effect.startOn += timestamp;
    effect.finishOn += timestamp;

    if (!effect.options.queue.limit || (this.effects.length < effect.options.queue.limit))
    this.effects.push(effect);

    if (!this.interval)
    this.interval = setInterval(this.loop.bind(this), 15);
    },
    remove: function(effect) {
    this.effects = this.effects.reject(function(e) { return e==effect });
    if (this.effects.length == 0) {
    clearInterval(this.interval);
    this.interval = null;
    }
    },
    loop: function() {
    var timePos = new Date().getTime();
    for(var i=0, len=this.effects.length;i<len;i++)
    this.effects[i] && this.effects[i].loop(timePos);
    }
    });

    Effect.Queues = {
    instances: $H(),
    get: function(queueName) {
    if (!Object.isString(queueName)) return queueName;

    if (!this.instances[queueName])
    this.instances[queueName] = new Effect.ScopedQueue();

    return this.instances[queueName];
    }
    };
    Effect.Queue = Effect.Queues.get('global');

    Effect.Base = Class.create();
    Effect.Base.prototype = {
    position: null,
    start: function(options) {
    function codeForEvent(options,eventName){
    return (
    (options[eventName+'Internal'] ? 'this.options.'+eventName+'Internal(this);' : '') +
    (options[eventName] ? 'this.options.'+eventName+'(this);' : '')
    );
    }
    if (options && options.transition === false) options.transition = Effect.Transitions.linear;
    this.options = Object.extend(Object.extend({ },Effect.DefaultOptions), options || { });
    this.currentFrame = 0;
    this.state = 'idle';
    this.startOn = this.options.delay*1000;
    this.finishOn = this.startOn+(this.options.duration*1000);
    this.fromToDelta = this.options.to-this.options.from;
    this.totalTime = this.finishOn-this.startOn;
    this.totalFrames = this.options.fps*this.options.duration;

    eval('this.render = function(pos){ '+
    'if (this.state=="idle"){this.state="running";'+
    codeForEvent(this.options,'beforeSetup')+
    (this.setup ? 'this.setup();':'')+
    codeForEvent(this.options,'afterSetup')+
    '};if (this.state=="running"){'+
    'pos=this.options.transition(pos)*'+this.fromToDelta+'+'+this.options.from+';'+
    'this.position=pos;'+
    codeForEvent(this.options,'beforeUpdate')+
    (this.update ? 'this.update(pos);':'')+
    codeForEvent(this.options,'afterUpdate')+
    '}}');

    this.event('beforeStart');
    if (!this.options.sync)
    Effect.Queues.get(Object.isString(this.options.queue) ?
    'global' : this.options.queue.scope).add(this);
    },
    loop: function(timePos) {
    if (timePos >= this.startOn) {
    if (timePos >= this.finishOn) {
    this.render(1.0);
    this.cancel();
    this.event('beforeFinish');
    if (this.finish) this.finish();
    this.event('afterFinish');
    return;
    }
    var pos = (timePos - this.startOn) / this.totalTime,
    frame = (pos * this.totalFrames).round();
    if (frame > this.currentFrame) {
    this.render(pos);
    this.currentFrame = frame;
    }
    }
    },
    cancel: function() {
    if (!this.options.sync)
    Effect.Queues.get(Object.isString(this.options.queue) ?
    'global' : this.options.queue.scope).remove(this);
    this.state = 'finished';
    },
    event: function(eventName) {
    if (this.options[eventName + 'Internal']) this.options[eventName + 'Internal'](this);
    if (this.options[eventName]) this.options[eventName](this);
    },
    inspect: function() {
    var data = $H();
    for(property in this)
    if (!Object.isFunction(this[property])) data[property] = this[property];
    return '#<Effect:' + data.inspect() + ',options:' + $H(this.options).inspect() + '>';
    }
    };

    Effect.Parallel = Class.create(Effect.Base, {
    initialize: function(effects) {
    this.effects = effects || [];
    this.start(arguments[1]);
    },
    update: function(position) {
    this.effects.invoke('render', position);
    },
    finish: function(position) {
    this.effects.each( function(effect) {
    effect.render(1.0);
    effect.cancel();
    effect.event('beforeFinish');
    if (effect.finish) effect.finish(position);
    effect.event('afterFinish');
    });
    }
    });

    Effect.Tween = Class.create(Effect.Base, {
    initialize: function(object, from, to) {
    object = Object.isString(object) ? $(object) : object;
    var args = $A(arguments), method = args.last(),
    options = args.length == 5 ? args[3] : null;
    this.method = Object.isFunction(method) ? method.bind(object) :
    Object.isFunction(object[method]) ? object[method].bind(object) :
    function(value) { object[method] = value };
    this.start(Object.extend({ from: from, to: to }, options || { }));
    },
    update: function(position) {
    this.method(position);
    }
    });

    Effect.Event = Class.create(Effect.Base, {
    initialize: function() {
    this.start(Object.extend({ duration: 0 }, arguments[0] || { }));
    },
    update: Prototype.emptyFunction
    });

    Effect.Opacity = Class.create(Effect.Base, {
    initialize: function(element) {
    this.element = $(element);
    if (!this.element) throw(Effect._elementDoesNotExistError);
    // make this work on IE on elements without 'layout'
    if (Prototype.Browser.IE && (!this.element.currentStyle.hasLayout))
    this.element.setStyle({zoom: 1});
    var options = Object.extend({
    from: this.element.getOpacity() || 0.0,
    to: 1.0
    }, arguments[1] || { });
    this.start(options);
    },
    update: function(position) {
    this.element.setOpacity(position);
    }
    });

    Effect.Move = Class.create(Effect.Base, {
    initialize: function(element) {
    this.element = $(element);
    if (!this.element) throw(Effect._elementDoesNotExistError);
    var options = Object.extend({
    x: 0,
    y: 0,
    mode: 'relative'
    }, arguments[1] || { });
    this.start(options);
    },
    setup: function() {
    this.element.makePositioned();
    this.originalLeft = parseFloat(this.element.getStyle('left') || '0');
    this.originalTop = parseFloat(this.element.getStyle('top') || '0');
    if (this.options.mode == 'absolute') {
    this.options.x = this.options.x - this.originalLeft;
    this.options.y = this.options.y - this.originalTop;
    }
    },
    update: function(position) {
    this.element.setStyle({
    left: (this.options.x * position + this.originalLeft).round() + 'px',
    top: (this.options.y * position + this.originalTop).round() + 'px'
    });
    }
    });

    // for backwards compatibility
    Effect.MoveBy = function(element, toTop, toLeft) {
    return new Effect.Move(element,
    Object.extend({ x: toLeft, y: toTop }, arguments[3] || { }));
    };

    Effect.Scale = Class.create(Effect.Base, {
    initialize: function(element, percent) {
    this.element = $(element);
    if (!this.element) throw(Effect._elementDoesNotExistError);
    var options = Object.extend({
    scaleX: true,
    scaleY: true,
    scaleContent: true,
    scaleFromCenter: false,
    scaleMode: 'box', // 'box' or 'contents' or { } with provided values
    scaleFrom: 100.0,
    scaleTo: percent
    }, arguments[2] || { });
    this.start(options);
    },
    setup: function() {
    this.restoreAfterFinish = this.options.restoreAfterFinish || false;
    this.elementPositioning = this.element.getStyle('position');

    this.originalStyle = { };
    ['top','left','width','height','fontSize'].each( function(k) {
    this.originalStyle[k] = this.element.style[k];
    }.bind(this));

    this.originalTop = this.element.offsetTop;
    this.originalLeft = this.element.offsetLeft;

    var fontSize = this.element.getStyle('font-size') || '100%';
    ['em','px','%','pt'].each( function(fontSizeType) {
    if (fontSize.indexOf(fontSizeType)>0) {
    this.fontSize = parseFloat(fontSize);
    this.fontSizeType = fontSizeType;
    }
    }.bind(this));

    this.factor = (this.options.scaleTo - this.options.scaleFrom)/100;

    this.dims = null;
    if (this.options.scaleMode=='box')
    this.dims = [this.element.offsetHeight, this.element.offsetWidth];
    if (/^content/.test(this.options.scaleMode))
    this.dims = [this.element.scrollHeight, this.element.scrollWidth];
    if (!this.dims)
    this.dims = [this.options.scaleMode.originalHeight,
    this.options.scaleMode.originalWidth];
    },
    update: function(position) {
    var currentScale = (this.options.scaleFrom/100.0) + (this.factor * position);
    if (this.options.scaleContent && this.fontSize)
    this.element.setStyle({fontSize: this.fontSize * currentScale + this.fontSizeType });
    this.setDimensions(this.dims[0] * currentScale, this.dims[1] * currentScale);
    },
    finish: function(position) {
    if (this.restoreAfterFinish) this.element.setStyle(this.originalStyle);
    },
    setDimensions: function(height, width) {
    var d = { };
    if (this.options.scaleX) d.width = width.round() + 'px';
    if (this.options.scaleY) d.height = height.round() + 'px';
    if (this.options.scaleFromCenter) {
    var topd = (height - this.dims[0])/2;
    var leftd = (width - this.dims[1])/2;
    if (this.elementPositioning == 'absolute') {
    if (this.options.scaleY) d.top = this.originalTop-topd + 'px';
    if (this.options.scaleX) d.left = this.originalLeft-leftd + 'px';
    } else {
    if (this.options.scaleY) d.top = -topd + 'px';
    if (this.options.scaleX) d.left = -leftd + 'px';
    }
    }
    this.element.setStyle(d);
    }
    });

    Effect.Highlight = Class.create(Effect.Base, {
    initialize: function(element) {
    this.element = $(element);
    if (!this.element) throw(Effect._elementDoesNotExistError);
    var options = Object.extend({ startcolor: '#ffff99' }, arguments[1] || { });
    this.start(options);
    },
    setup: function() {
    // Prevent executing on elements not in the layout flow
    if (this.element.getStyle('display')=='none') { this.cancel(); return; }
    // Disable background image during the effect
    this.oldStyle = { };
    if (!this.options.keepBackgroundImage) {
    this.oldStyle.backgroundImage = this.element.getStyle('background-image');
    this.element.setStyle({backgroundImage: 'none'});
    }
    if (!this.options.endcolor)
    this.options.endcolor = this.element.getStyle('background-color').parseColor('#ffffff');
    if (!this.options.restorecolor)
    this.options.restorecolor = this.element.getStyle('background-color');
    // init color calculations
    this._base = $R(0,2).map(function(i){ return parseInt(this.options.startcolor.slice(i*2+1,i*2+3),16) }.bind(this));
    this._delta = $R(0,2).map(function(i){ return parseInt(this.options.endcolor.slice(i*2+1,i*2+3),16)-this._base[i] }.bind(this));
    },
    update: function(position) {
    this.element.setStyle({backgroundColor: $R(0,2).inject('#',function(m,v,i){
    return m+((this._base[i]+(this._delta[i]*position)).round().toColorPart()); }.bind(this)) });
    },
    finish: function() {
    this.element.setStyle(Object.extend(this.oldStyle, {
    backgroundColor: this.options.restorecolor
    }));
    }
    });

    Effect.ScrollTo = function(element) {
    var options = arguments[1] || { },
    scrollOffsets = document.viewport.getScrollOffsets(),
    elementOffsets = $(element).cumulativeOffset(),
    max = (window.height || document.body.scrollHeight) - document.viewport.getHeight();

    if (options.offset) elementOffsets[1] += options.offset;

    return new Effect.Tween(null,
    scrollOffsets.top,
    elementOffsets[1] > max ? max : elementOffsets[1],
    options,
    function(p){ scrollTo(scrollOffsets.left, p.round()) }
    );
    };

    /* ------------- combination effects ------------- */

    Effect.Fade = function(element) {
    element = $(element);
    var oldOpacity = element.getInlineOpacity();
    var options = Object.extend({
    from: element.getOpacity() || 1.0,
    to: 0.0,
    afterFinishInternal: function(effect) {
    if (effect.options.to!=0) return;
    effect.element.hide().setStyle({opacity: oldOpacity});
    }
    }, arguments[1] || { });
    return new Effect.Opacity(element,options);
    };

    Effect.Appear = function(element) {
    element = $(element);
    var options = Object.extend({
    from: (element.getStyle('display') == 'none' ? 0.0 : element.getOpacity() || 0.0),
    to: 1.0,
    // force Safari to render floated elements properly
    afterFinishInternal: function(effect) {
    effect.element.forceRerendering();
    },
    beforeSetup: function(effect) {
    effect.element.setOpacity(effect.options.from).show();
    }}, arguments[1] || { });
    return new Effect.Opacity(element,options);
    };

    Effect.Puff = function(element) {
    element = $(element);
    var oldStyle = {
    opacity: element.getInlineOpacity(),
    position: element.getStyle('position'),
    top: element.style.top,
    left: element.style.left,
    width: element.style.width,
    height: element.style.height
    };
    return new Effect.Parallel(
    [ new Effect.Scale(element, 200,
    { sync: true, scaleFromCenter: true, scaleContent: true, restoreAfterFinish: true }),
    new Effect.Opacity(element, { sync: true, to: 0.0 } ) ],
    Object.extend({ duration: 1.0,
    beforeSetupInternal: function(effect) {
    Position.absolutize(effect.effects[0].element)
    },
    afterFinishInternal: function(effect) {
    effect.effects[0].element.hide().setStyle(oldStyle); }
    }, arguments[1] || { })
    );
    };

    Effect.BlindUp = function(element) {
    element = $(element);
    element.makeClipping();
    return new Effect.Scale(element, 0,
    Object.extend({ scaleContent: false,
    scaleX: false,
    restoreAfterFinish: true,
    afterFinishInternal: function(effect) {
    effect.element.hide().undoClipping();
    }
    }, arguments[1] || { })
    );
    };

    Effect.BlindDown = function(element) {
    element = $(element);
    var elementDimensions = element.getDimensions();
    return new Effect.Scale(element, 100, Object.extend({
    scaleContent: false,
    scaleX: false,
    scaleFrom: 0,
    scaleMode: {originalHeight: elementDimensions.height, originalWidth: elementDimensions.width},
    restoreAfterFinish: true,
    afterSetup: function(effect) {
    effect.element.makeClipping().setStyle({height: '0px'}).show();
    },
    afterFinishInternal: function(effect) {
    effect.element.undoClipping();
    }
    }, arguments[1] || { }));
    };

    Effect.SwitchOff = function(element) {
    element = $(element);
    var oldOpacity = element.getInlineOpacity();
    return new Effect.Appear(element, Object.extend({
    duration: 0.4,
    from: 0,
    transition: Effect.Transitions.flicker,
    afterFinishInternal: function(effect) {
    new Effect.Scale(effect.element, 1, {
    duration: 0.3, scaleFromCenter: true,
    scaleX: false, scaleContent: false, restoreAfterFinish: true,
    beforeSetup: function(effect) {
    effect.element.makePositioned().makeClipping();
    },
    afterFinishInternal: function(effect) {
    effect.element.hide().undoClipping().undoPositioned().setStyle({opacity: oldOpacity});
    }
    })
    }
    }, arguments[1] || { }));
    };

    Effect.DropOut = function(element) {
    element = $(element);
    var oldStyle = {
    top: element.getStyle('top'),
    left: element.getStyle('left'),
    opacity: element.getInlineOpacity() };
    return new Effect.Parallel(
    [ new Effect.Move(element, {x: 0, y: 100, sync: true }),
    new Effect.Opacity(element, { sync: true, to: 0.0 }) ],
    Object.extend(
    { duration: 0.5,
    beforeSetup: function(effect) {
    effect.effects[0].element.makePositioned();
    },
    afterFinishInternal: function(effect) {
    effect.effects[0].element.hide().undoPositioned().setStyle(oldStyle);
    }
    }, arguments[1] || { }));
    };

    Effect.Shake = function(element) {
    element = $(element);
    var oldStyle = {
    top: element.getStyle('top'),
    left: element.getStyle('left') };
    return new Effect.Move(element,
    { x: 20, y: 0, duration: 0.05, afterFinishInternal: function(effect) {
    new Effect.Move(effect.element,
    { x: -40, y: 0, duration: 0.1, afterFinishInternal: function(effect) {
    new Effect.Move(effect.element,
    { x: 40, y: 0, duration: 0.1, afterFinishInternal: function(effect) {
    new Effect.Move(effect.element,
    { x: -40, y: 0, duration: 0.1, afterFinishInternal: function(effect) {
    new Effect.Move(effect.element,
    { x: 40, y: 0, duration: 0.1, afterFinishInternal: function(effect) {
    new Effect.Move(effect.element,
    { x: -20, y: 0, duration: 0.05, afterFinishInternal: function(effect) {
    effect.element.undoPositioned().setStyle(oldStyle);
    }}) }}) }}) }}) }}) }});
    };

    Effect.SlideDown = function(element) {
    element = $(element).cleanWhitespace();
    // SlideDown need to have the content of the element wrapped in a container element with fixed height!
    var oldInnerBottom = element.down().getStyle('bottom');
    var elementDimensions = element.getDimensions();
    return new Effect.Scale(element, 100, Object.extend({
    scaleContent: false,
    scaleX: false,
    scaleFrom: window.opera ? 0 : 1,
    scaleMode: {originalHeight: elementDimensions.height, originalWidth: elementDimensions.width},
    restoreAfterFinish: true,
    afterSetup: function(effect) {
    effect.element.makePositioned();
    effect.element.down().makePositioned();
    if (window.opera) effect.element.setStyle({top: ''});
    effect.element.makeClipping().setStyle({height: '0px'}).show();
    },
    afterUpdateInternal: function(effect) {
    effect.element.down().setStyle({bottom:
    (effect.dims[0] - effect.element.clientHeight) + 'px' });
    },
    afterFinishInternal: function(effect) {
    effect.element.undoClipping().undoPositioned();
    effect.element.down().undoPositioned().setStyle({bottom: oldInnerBottom}); }
    }, arguments[1] || { })
    );
    };

    Effect.SlideUp = function(element) {
    element = $(element).cleanWhitespace();
    var oldInnerBottom = element.down().getStyle('bottom');
    var elementDimensions = element.getDimensions();
    return new Effect.Scale(element, window.opera ? 0 : 1,
    Object.extend({ scaleContent: false,
    scaleX: false,
    scaleMode: 'box',
    scaleFrom: 100,
    scaleMode: {originalHeight: elementDimensions.height, originalWidth: elementDimensions.width},
    restoreAfterFinish: true,
    afterSetup: function(effect) {
    effect.element.makePositioned();
    effect.element.down().makePositioned();
    if (window.opera) effect.element.setStyle({top: ''});
    effect.element.makeClipping().show();
    },
    afterUpdateInternal: function(effect) {
    effect.element.down().setStyle({bottom:
    (effect.dims[0] - effect.element.clientHeight) + 'px' });
    },
    afterFinishInternal: function(effect) {
    effect.element.hide().undoClipping().undoPositioned();
    effect.element.down().undoPositioned().setStyle({bottom: oldInnerBottom});
    }
    }, arguments[1] || { })
    );
    };

    // Bug in opera makes the TD containing this element expand for a instance after finish
    Effect.Squish = function(element) {
    return new Effect.Scale(element, window.opera ? 1 : 0, {
    restoreAfterFinish: true,
    beforeSetup: function(effect) {
    effect.element.makeClipping();
    },
    afterFinishInternal: function(effect) {
    effect.element.hide().undoClipping();
    }
    });
    };

    Effect.Grow = function(element) {
    element = $(element);
    var options = Object.extend({
    direction: 'center',
    moveTransition: Effect.Transitions.sinoidal,
    scaleTransition: Effect.Transitions.sinoidal,
    opacityTransition: Effect.Transitions.full
    }, arguments[1] || { });
    var oldStyle = {
    top: element.style.top,
    left: element.style.left,
    height: element.style.height,
    width: element.style.width,
    opacity: element.getInlineOpacity() };

    var dims = element.getDimensions();
    var initialMoveX, initialMoveY;
    var moveX, moveY;

    switch (options.direction) {
    case 'top-left':
    initialMoveX = initialMoveY = moveX = moveY = 0;
    break;
    case 'top-right':
    initialMoveX = dims.width;
    initialMoveY = moveY = 0;
    moveX = -dims.width;
    break;
    case 'bottom-left':
    initialMoveX = moveX = 0;
    initialMoveY = dims.height;
    moveY = -dims.height;
    break;
    case 'bottom-right':
    initialMoveX = dims.width;
    initialMoveY = dims.height;
    moveX = -dims.width;
    moveY = -dims.height;
    break;
    case 'center':
    initialMoveX = dims.width / 2;
    initialMoveY = dims.height / 2;
    moveX = -dims.width / 2;
    moveY = -dims.height / 2;
    break;
    }

    return new Effect.Move(element, {
    x: initialMoveX,
    y: initialMoveY,
    duration: 0.01,
    beforeSetup: function(effect) {
    effect.element.hide().makeClipping().makePositioned();
    },
    afterFinishInternal: function(effect) {
    new Effect.Parallel(
    [ new Effect.Opacity(effect.element, { sync: true, to: 1.0, from: 0.0, transition: options.opacityTransition }),
    new Effect.Move(effect.element, { x: moveX, y: moveY, sync: true, transition: options.moveTransition }),
    new Effect.Scale(effect.element, 100, {
    scaleMode: { originalHeight: dims.height, originalWidth: dims.width },
    sync: true, scaleFrom: window.opera ? 1 : 0, transition: options.scaleTransition, restoreAfterFinish: true})
    ], Object.extend({
    beforeSetup: function(effect) {
    effect.effects[0].element.setStyle({height: '0px'}).show();
    },
    afterFinishInternal: function(effect) {
    effect.effects[0].element.undoClipping().undoPositioned().setStyle(oldStyle);
    }
    }, options)
    )
    }
    });
    };

    Effect.Shrink = function(element) {
    element = $(element);
    var options = Object.extend({
    direction: 'center',
    moveTransition: Effect.Transitions.sinoidal,
    scaleTransition: Effect.Transitions.sinoidal,
    opacityTransition: Effect.Transitions.none
    }, arguments[1] || { });
    var oldStyle = {
    top: element.style.top,
    left: element.style.left,
    height: element.style.height,
    width: element.style.width,
    opacity: element.getInlineOpacity() };

    var dims = element.getDimensions();
    var moveX, moveY;

    switch (options.direction) {
    case 'top-left':
    moveX = moveY = 0;
    break;
    case 'top-right':
    moveX = dims.width;
    moveY = 0;
    break;
    case 'bottom-left':
    moveX = 0;
    moveY = dims.height;
    break;
    case 'bottom-right':
    moveX = dims.width;
    moveY = dims.height;
    break;
    case 'center':
    moveX = dims.width / 2;
    moveY = dims.height / 2;
    break;
    }

    return new Effect.Parallel(
    [ new Effect.Opacity(element, { sync: true, to: 0.0, from: 1.0, transition: options.opacityTransition }),
    new Effect.Scale(element, window.opera ? 1 : 0, { sync: true, transition: options.scaleTransition, restoreAfterFinish: true}),
    new Effect.Move(element, { x: moveX, y: moveY, sync: true, transition: options.moveTransition })
    ], Object.extend({
    beforeStartInternal: function(effect) {
    effect.effects[0].element.makePositioned().makeClipping();
    },
    afterFinishInternal: function(effect) {
    effect.effects[0].element.hide().undoClipping().undoPositioned().setStyle(oldStyle); }
    }, options)
    );
    };

    Effect.Pulsate = function(element) {
    element = $(element);
    var options = arguments[1] || { };
    var oldOpacity = element.getInlineOpacity();
    var transition = options.transition || Effect.Transitions.sinoidal;
    var reverser = function(pos){ return transition(1-Effect.Transitions.pulse(pos, options.pulses)) };
    reverser.bind(transition);
    return new Effect.Opacity(element,
    Object.extend(Object.extend({ duration: 2.0, from: 0,
    afterFinishInternal: function(effect) { effect.element.setStyle({opacity: oldOpacity}); }
    }, options), {transition: reverser}));
    };

    Effect.Fold = function(element) {
    element = $(element);
    var oldStyle = {
    top: element.style.top,
    left: element.style.left,
    width: element.style.width,
    height: element.style.height };
    element.makeClipping();
    return new Effect.Scale(element, 5, Object.extend({
    scaleContent: false,
    scaleX: false,
    afterFinishInternal: function(effect) {
    new Effect.Scale(element, 1, {
    scaleContent: false,
    scaleY: false,
    afterFinishInternal: function(effect) {
    effect.element.hide().undoClipping().setStyle(oldStyle);
    } });
    }}, arguments[1] || { }));
    };

    Effect.Morph = Class.create(Effect.Base, {
    initialize: function(element) {
    this.element = $(element);
    if (!this.element) throw(Effect._elementDoesNotExistError);
    var options = Object.extend({
    style: { }
    }, arguments[1] || { });

    if (!Object.isString(options.style)) this.style = $H(options.style);
    else {
    if (options.style.include(':'))
    this.style = options.style.parseStyle();
    else {
    this.element.addClassName(options.style);
    this.style = $H(this.element.getStyles());
    this.element.removeClassName(options.style);
    var css = this.element.getStyles();
    this.style = this.style.reject(function(style) {
    return style.value == css[style.key];
    });
    options.afterFinishInternal = function(effect) {
    effect.element.addClassName(effect.options.style);
    effect.transforms.each(function(transform) {
    effect.element.style[transform.style] = '';
    });
    }
    }
    }
    this.start(options);
    },

    setup: function(){
    function parseColor(color){
    if (!color || ['rgba(0, 0, 0, 0)','transparent'].include(color)) color = '#ffffff';
    color = color.parseColor();
    return $R(0,2).map(function(i){
    return parseInt( color.slice(i*2+1,i*2+3), 16 )
    });
    }
    this.transforms = this.style.map(function(pair){
    var property = pair[0], value = pair[1], unit = null;

    if (value.parseColor('#zzzzzz') != '#zzzzzz') {
    value = value.parseColor();
    unit = 'color';
    } else if (property == 'opacity') {
    value = parseFloat(value);
    if (Prototype.Browser.IE && (!this.element.currentStyle.hasLayout))
    this.element.setStyle({zoom: 1});
    } else if (Element.CSS_LENGTH.test(value)) {
    var components = value.match(/^([\+\-]?[0-9\.]+)(.*)$/);
    value = parseFloat(components[1]);
    unit = (components.length == 3) ? components[2] : null;
    }

    var originalValue = this.element.getStyle(property);
    return {
    style: property.camelize(),
    originalValue: unit=='color' ? parseColor(originalValue) : parseFloat(originalValue || 0),
    targetValue: unit=='color' ? parseColor(value) : value,
    unit: unit
    };
    }.bind(this)).reject(function(transform){
    return (
    (transform.originalValue == transform.targetValue) ||
    (
    transform.unit != 'color' &&
    (isNaN(transform.originalValue) || isNaN(transform.targetValue))
    )
    )
    });
    },
    update: function(position) {
    var style = { }, transform, i = this.transforms.length;
    while(i--)
    style[(transform = this.transforms[i]).style] =
    transform.unit=='color' ? '#'+
    (Math.round(transform.originalValue[0]+
    (transform.targetValue[0]-transform.originalValue[0])*position)).toColorPart() +
    (Math.round(transform.originalValue[1]+
    (transform.targetValue[1]-transform.originalValue[1])*position)).toColorPart() +
    (Math.round(transform.originalValue[2]+
    (transform.targetValue[2]-transform.originalValue[2])*position)).toColorPart() :
    (transform.originalValue +
    (transform.targetValue - transform.originalValue) * position).toFixed(3) +
    (transform.unit === null ? '' : transform.unit);
    this.element.setStyle(style, true);
    }
    });

    Effect.Transform = Class.create({
    initialize: function(tracks){
    this.tracks = [];
    this.options = arguments[1] || { };
    this.addTracks(tracks);
    },
    addTracks: function(tracks){
    tracks.each(function(track){
    var data = $H(track).values().first();
    this.tracks.push($H({
    ids: $H(track).keys().first(),
    effect: Effect.Morph,
    options: { style: data }
    }));
    }.bind(this));
    return this;
    },
    play: function(){
    return new Effect.Parallel(
    this.tracks.map(function(track){
    var elements = [$(track.ids) || $$(track.ids)].flatten();
    return elements.map(function(e){ return new track.effect(e, Object.extend({ sync:true }, track.options)) });
    }).flatten(),
    this.options
    );
    }
    });

    Element.CSS_PROPERTIES = $w(
    'backgroundColor backgroundPosition borderBottomColor borderBottomStyle ' +
    'borderBottomWidth borderLeftColor borderLeftStyle borderLeftWidth ' +
    'borderRightColor borderRightStyle borderRightWidth borderSpacing ' +
    'borderTopColor borderTopStyle borderTopWidth bottom clip color ' +
    'fontSize fontWeight height left letterSpacing lineHeight ' +
    'marginBottom marginLeft marginRight marginTop markerOffset maxHeight '+
    'maxWidth minHeight minWidth opacity outlineColor outlineOffset ' +
    'outlineWidth paddingBottom paddingLeft paddingRight paddingTop ' +
    'right textIndent top width wordSpacing zIndex');

    Element.CSS_LENGTH = /^(([\+\-]?[0-9\.]+)(em|ex|px|in|cm|mm|pt|pc|\%))|0$/;

    String.__parseStyleElement = document.createElement('div');
    String.prototype.parseStyle = function(){
    var style, styleRules = $H();
    if (Prototype.Browser.WebKit)
    style = new Element('div',{style:this}).style;
    else {
    String.__parseStyleElement.innerHTML = '<div style="' + this + '"></div>';
    style = String.__parseStyleElement.childNodes[0].style;
    }

    Element.CSS_PROPERTIES.each(function(property){
    if (style[property]) styleRules[property] = style[property];
    });

    if (Prototype.Browser.IE && this.include('opacity'))
    styleRules.opacity = this.match(/opacity:\s*((?:0|1)?(?:\.\d*)?)/)[1];

    return styleRules;
    };

    if (document.defaultView && document.defaultView.getComputedStyle) {
    Element.getStyles = function(element) {
    var css = document.defaultView.getComputedStyle($(element), null);
    return Element.CSS_PROPERTIES.inject({ }, function(styles, property) {
    styles[property] = css[property];
    return styles;
    });
    };
    } else {
    Element.getStyles = function(element) {
    element = $(element);
    var css = element.currentStyle, styles;
    styles = Element.CSS_PROPERTIES.inject({ }, function(hash, property) {
    hash[property] = css[property];
    return hash;
    });
    if (!styles.opacity) styles.opacity = element.getOpacity();
    return styles;
    };
    };

    Effect.Methods = {
    morph: function(element, style) {
    element = $(element);
    new Effect.Morph(element, Object.extend({ style: style }, arguments[2] || { }));
    return element;
    },
    visualEffect: function(element, effect, options) {
    element = $(element)
    var s = effect.dasherize().camelize(), klass = s.charAt(0).toUpperCase() + s.substring(1);
    new Effect[klass](element, options);
    return element;
    },
    highlight: function(element, options) {
    element = $(element);
    new Effect.Highlight(element, options);
    return element;
    }
    };

    $w('fade appear grow shrink fold blindUp blindDown slideUp slideDown '+
    'pulsate shake puff squish switchOff dropOut').each(
    function(effect) {
    Effect.Methods[effect] = function(element, options){
    element = $(element);
    Effect[effect.charAt(0).toUpperCase() + effect.substring(1)](element, options);
    return element;
    }
    }
    );

    $w('getInlineOpacity forceRerendering setContentZoom collectTextNodes collectTextNodesIgnoreClass getStyles').each(
    function(f) { Effect.Methods[f] = Element[f]; }
    );

    Element.addMethods(Effect.Methods);

    Hi,

    ich habe folgendes Problem, ich habe ein Menü und je nachdem wo ich draufklicke soll ein div Container eingeblendet werden.
    Kurzer Ausschnitt aus dem Quellcode zum Aufruf des Containers:

    [*]Win 2000 - Testsystem


    [*]Win XP Pro - LifeSienceEdition


    Ich habe folgendes Problem, ich möchte das die Container beim Start nicht angezeigt werden, wenn ich aber im CSS die Eigenschaft auf hidden setze, dann passiert nichts wenn ich dann auf den Link klicke, da das Div Element ja nicht angezeigt wird. Hat jemand eine Idee wie ich das am besten lösen könnte?

    Ich habe halt ein Menü, wo durch das klicken auf ein Wort Div Container eingeblendet werden sollen und wenn ich auf ein anderes Wort klicke soll der dazugehörige div container eingeblendet werden

    Ich hoffe sehr, dass mir jemand helfen kann.

    aber kann ich damit einfluß nehmen auf den rahmen des popups? also da wo auch die buttons zum schließen des popups drin sind und der titel usw.? wenn ja wie?

    ich lasse eine html seite laden, wenn ich in dieser css einbaue dann bezieht es sich doch nur auf den inhalt des popups, aber doch nicht auf das popup an sich, wie geht das dann?

    Hi ich erzeuge ein PopUp mit folgender Funktion beim Seitenstart.

    function popup(mylink, windowname)
    {
    if (! window.focus)return true;
    var href;
    if (typeof(mylink) == 'string')
    href=mylink;
    else
    href=mylink.href;
    window.open(href, windowname, 'width=400,height=200,scrollbars=no,left=440,top=412');
    return false;
    }

    Er macht dies auch. Ich möchte nun das erzeugte PopUp mit CSS anpassen. Wie geht das? So dass es eben nicht mehr wie ein standard windows popup aussieht.

    Danke für eure Tipps

    irgendwie klappt das nicht, kannst du das bitte nochmal erklären?

    habe wie gesagt folgendes.

    var namenav ="nav";
    var menu ="";

    menu = document.namenav.style

    er soll also den wert der variablen namenav einfügen und dies als object an menu zurückgeben, so dass menu vom typ object ist