Seite 2 von 2 ErsteErste 12
Ergebnis 16 bis 28 von 28
  1. #16
    Gawin ist offline Jungspund
    registriert
    30-01-2012
    Beiträge
    14

    AW: [JavaScript] Problem mit meiner Drag'nDrop Klasse

    Zitat Zitat von kkapsner Beitrag anzeigen
    Die Funktion arbeitet aber immer noch nicht in allen Fällen gleich: #PARENTID .CLASS ist nicht das gleiche wie hasClass(obj[i], clas) && obj[i].parendNode.id == parent
    Schon klar das dass nicht das selbe ist, das bezieht sich ja auch auf das document.all für ie5 damit überprüf ich ob die erste obere ebene mit parent gleich ist. Ka wie ich das sonst machen sollte is der einfachste weg wenigstens sowas ähnliches reinzupacken


    Zitat Zitat von ein schlauer Beitrag anzeigen
    Ausserdem sollten die Events für onmousedown/mousmove ein return false zurück geben, da sonst Text markiert wird. Und der mousedown darüber hinaus noch e.preventDefault() aufrufen, da sonst das Dragen im Firefox ab und zu stockt.
    Danke für den Tipp das mit return false hatte ich mal gehört aber total vergessen das andere is mir neu

    ps.: hab alles nochmal nen bisschen geändert und neu hochgeladen, aber jetzt klappt irgent was nicht richtig im IE -.- das neu eingetragene fenster sieht nicht richtig aus und lässt sich nicht verschieben.

    edit: Fehler gefunden!
    edit2: neuer Fehler -.-. wieso kann ich die objeckte mit classe=dragobj nicht verschieben? mousedown bei window klappt ja sonst würde der ja nicht zur hand wechseln aber document.onmousemove/onmouseup klappt irgent wie net
    edit3: geändert und jetzt will der IE mal wieder nicht ich ruf ja nen fenster mit verzögerung auf aber da kommt ne fehlermeldung zeile: 251 zeichen: 6 = Window.style.top = top+"px";
    hab Window geürft mit nem alert und das object ist ok ka was da los ist
    edit4: dummer fehler wurde behoben hoffe Ihr könnt mir trotzdem nochn paar tipps geben
    Geändert von Gawin (09-02-2012 um 23:12 Uhr)

  2. #17
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.702

    AW: [JavaScript] Problem mit meiner Drag'nDrop Klasse

    Um das gleich zu machen, könntest du die .parentNode-Kette raufklettern und prüfen, ob irgendeines die richtige ID hat.

  3. #18
    Gawin ist offline Jungspund
    registriert
    30-01-2012
    Beiträge
    14

    AW: [JavaScript] Problem mit meiner Drag'nDrop Klasse

    Was hälste davon?
    Code:
    _$ = function(clas, parent){
        var ret = [];
        var pardoc = document.getElementById(parent) || document;
        
        if(pardoc.getElementsByClassName){
            var obj = pardoc.getElementsByClassName(clas);
            for(var i=0, l=obj.length; i<l; i++){
                ret.push(obj[i]);
            }
        }else if(document.querySelectorAll){
            var query = parent ? '#'+parent+' .'+clas : '.'+clas;
            var obj = document.querySelectorAll(query);
            for(var i=0, l=obj.length; i<l; i++){
                ret.push(obj[i]);
            }
        }else{
            var obj = (document.getElementById(parent) || document.body).getElementsByTagName('*');
            obj = obj[0] ? obj : document.all;
            
            for( var i=0, l=obj.length; i<l; i++){
                if(hasClass(obj[i], clas)){
    		var parentobj = obj[i];
    		
                    if(obj != document.all || (obj == document.all && !parent)){
                        ret.push(obj[i]);
                    }else if((obj == document.all && parent)){
    		    while(parentobj.parentNode){
    			if(parentobj.parentNode.id === parent) ret.push(obj[i]); break;
    			parentobj = parentobj.parentNode;
    		    }
    		}
                }
            }
        }
        return ret;
    }
    Geändert von Gawin (10-02-2012 um 22:19 Uhr)

  4. #19
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.702

    AW: [JavaScript] Problem mit meiner Drag'nDrop Klasse

    Hm... langsam wird's.
    Warum du im letzten else der ersten Ebene nicht pardoc verwendest, ist mir nicht ganz klar. Außerdem kann es passieren, dass pardoc einfach kein Element enthält und deswegen obj[0] nicht existiert - und nicht weil der Browser die Schreibweise mit * nicht unterstützt.

    Die Variable parentobj wird an der falschen Stelle erstellt - die wird erst vor dem while benötigt.

    Auch das if vor dem while ist unnötig - durch die erste Abfrage, kann da gar nichts anderes mehr übrig bleiben. Die Abfragen auf == document.all finde ich auch nicht so besonders schön - das lässt sich besser in einer Flag speichern.

  5. #20
    Gawin ist offline Jungspund
    registriert
    30-01-2012
    Beiträge
    14

    AW: [JavaScript] Problem mit meiner Drag'nDrop Klasse

    Das mit dem obj[0] is ja nur wenn in einer id gar kein Objekt ist aber wie kann ich das rausfinden ob da nun gar keins ist oder nicht * erkannt wird?.
    Hoffe sonst ist alles ok mit dem code.
    Code:
    SH.getByClass = function(clas, parent){
        var ret = [];
        var pardoc = document.getElementById(parent) || document;
        
        if(pardoc.getElementsByClassName){
            var obj = pardoc.getElementsByClassName(clas);
            for(var i=0, l=obj.length; i<l; i++){
                ret.push(obj[i]);
            }
        }else if(document.querySelectorAll){
            var query = parent ? '#'+parent+' .'+clas : '.'+clas;
            var obj = document.querySelectorAll(query);
            for(var i=0, l=obj.length; i<l; i++){
                ret.push(obj[i]);
            }
        }else{
    	var all = false;
            var obj = pardoc.getElementsByTagName('*');
            if(!obj[0]) obj = document.all; all = true;
            for( var i=0, l=obj.length; i<l; i++){
                if(SH.hasClass(obj[i], clas)){
                    if(!all || (all && !parent)){
                        ret.push(obj[i]);
                    }else{
                        var parentobj = obj[i]
    		    while(parentobj.parentNode){
    			if(parentobj.parentNode.id === parent) ret.push(obj[i]); break;
    			parentobj = parentobj.parentNode;
    		    }
    		}
                }
            }
        }
        return ret;
    }
    Hab alles mal in nen "Namespace" reingepackt und neu benannt

    edit: mir is was eingefallen weis aber nicht ob das so in ordnung ist
    Code:
    if((!obj[0] && !parent) || (parent && parent.firstChild && obj[0])){ obj = document.all; all = true;}
    Geändert von Gawin (11-02-2012 um 14:09 Uhr)

  6. #21
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.702

    AW: [JavaScript] Problem mit meiner Drag'nDrop Klasse

    Lass' den IE5 doch einfach raus...

  7. #22
    Gawin ist offline Jungspund
    registriert
    30-01-2012
    Beiträge
    14

    AW: [JavaScript] Problem mit meiner Drag'nDrop Klasse

    Da der immer noch in bestimmten Situationen Fehler wirft lass ich ihn jetzt auch raus. Keinen bock mehr undifiend von undifiend zu unterscheiden xD.
    Hoffe Ihr habt nochn paar Tipps für mich um den code zu kürzen. Ich mein Schleifen die ich mir sparen kann oder Überprüfungen die zu viel sind.

    Hier nochmal der Link zur Demo und direcktlink zum Script hier.
    Geändert von Gawin (12-02-2012 um 12:43 Uhr)

  8. #23
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.702

    AW: [JavaScript] Problem mit meiner Drag'nDrop Klasse

    getAttribute liefert in verschiedenen Browsern einen anderen Wert zurück, wenn das Attribut nicht existiert. In den moderneren zwar immer NULL aber in Älteren auch mal einen leeren String. Das musst du berücksichtigen.

    Du hast auch noch ein paar unnötige Abfragen (ein if und danach ein else if, mit exakt der inversen Abfrage - das ist unnötig).

  9. #24
    Gawin ist offline Jungspund
    registriert
    30-01-2012
    Beiträge
    14

    AW: [JavaScript] Problem mit meiner Drag'nDrop Klasse

    Ich weiss nicht welche unötige abfrage du meinst hab nen bisschen verändert hoffe hab sie gefunden.

  10. #25
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.702

    AW: [JavaScript] Problem mit meiner Drag'nDrop Klasse

    War in der .setClass.

  11. #26
    Gawin ist offline Jungspund
    registriert
    30-01-2012
    Beiträge
    14

    AW: [JavaScript] Problem mit meiner Drag'nDrop Klasse

    Gut dann hab ichs^^ hoffe das es das jetzt war. Wollte jetzt noch ne beschreibung zur Klasse schreiben und dann ne resize Klasse schreiben hoffentlich hab ich da nicht auch solche probleme.
    Auf jedenfall danke für die hilfe
    Gruss Gawin
    Geändert von Gawin (14-02-2012 um 12:49 Uhr)

  12. #27
    Jonny2009 ist offline Foren As
    registriert
    15-02-2009
    Beiträge
    85

    AW: [JavaScript] Problem mit meiner Drag'nDrop Klasse

    Hahaha Kkapsner, so hab ich dich ja noch nie ausrasten gelesen, "deine Funktionen sind absoluter Mist" <-- hahahaha geil, kommt aber echt selten vor gelle ^^

  13. #28
    Avatar von kkapsner
    kkapsner ist offline Super Moderator
    registriert
    28-03-2008
    Beiträge
    17.702

    AW: [JavaScript] Problem mit meiner Drag'nDrop Klasse

    Manchmal hat man so Tage... kommt aber zum Glück nicht so häufig vor.

Seite 2 von 2 ErsteErste 12

Ähnliche Themen

  1. Problem mit meiner Seite
    Von sumatra70 im Forum JavaScript
    Antworten: 30
    Letzter Beitrag: 12-05-2008, 17:54
  2. Javascript Klasse
    Von BadMatt im Forum JavaScript
    Antworten: 2
    Letzter Beitrag: 10-05-2008, 22:04
  3. Antworten: 4
    Letzter Beitrag: 11-12-2007, 10:47
  4. Problem mit meiner Navigationsleiste....
    Von Gobby im Forum JavaScript
    Antworten: 9
    Letzter Beitrag: 17-02-2006, 23:56
  5. Problem mit meiner Navigation
    Von JanaW im Forum JavaScript
    Antworten: 3
    Letzter Beitrag: 08-07-2005, 14:30

Stichworte

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •