php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS Probleme mit HTML5, Bootstrap oder jQuery ?

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 11-07-2008, 16:16
1Einstein
 Newbie
Links : Onlinestatus : 1Einstein ist offline
Registriert seit: Jul 2008
Beiträge: 7
1Einstein ist zur Zeit noch ein unbeschriebenes Blatt
Standard Performance Firefox

Hallo

Meiner erster Post hier, dennoch mach ich es mal recht kurz.

Problem: dieses Konstrukt hier verursacht im Firefox nach einigem Hin- und Herfahren der Maus in den Randzellen (oben und links) wahnisnnige Lag's. Weis jemand warum? In anderen Browsern geht es tadellos.

Danke
Gruß
Mit Zitat antworten
  #2 (permalink)  
Alt 11-07-2008, 16:49
Wyveres
 Registrierter Benutzer
Links : Onlinestatus : Wyveres ist offline
Registriert seit: Dec 2006
Ort: Rügen
Beiträge: 763
Blog-Einträge: 2
Wyveres ist zur Zeit noch ein unbeschriebenes Blatt
Wyveres eine Nachricht über ICQ schicken
Standard

FireFox ändert die farbe bei jeder maus veränderungen ... das heist jedesmal wenn du die maus auch innerhalb eines grauen feldes bewegt zeichnet er alle felder neu ... grau ... das das nicht muss ^^ is klar
__________________
Bitte Beachten.
Foren-Regeln
Danke
Mit Zitat antworten
  #3 (permalink)  
Alt 11-07-2008, 17:29
1Einstein
 Newbie
Links : Onlinestatus : 1Einstein ist offline
Registriert seit: Jul 2008
Beiträge: 7
1Einstein ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Und warum tut der sowas? Das nervt ganz schön.

Kann man denn etwas dagegen machen?
Mit Zitat antworten
  #4 (permalink)  
Alt 11-07-2008, 17:39
pekka
 PHP Master
Links : Onlinestatus : pekka ist offline
Registriert seit: Jun 2001
Ort: Köln
Beiträge: 6.608
pekka befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Original geschrieben von 1Einstein
Und warum tut der sowas? Das nervt ganz schön.

Kann man denn etwas dagegen machen?
Sich das letzte angeklickte Element merken und bei einem Update nur dieses wieder weiß färben.

OffTopic:

Firefox ist bei mir eh immer und grundsätzlich eine Performance-Katastrophe... Braucht im Schnitt 200 MB RAM und ab und zu 99 Prozent der Prozessorkapazität...

Mit Zitat antworten
  #5 (permalink)  
Alt 12-07-2008, 01:55
1Einstein
 Newbie
Links : Onlinestatus : 1Einstein ist offline
Registriert seit: Jul 2008
Beiträge: 7
1Einstein ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von pekka
[B]Sich das letzte angeklickte Element merken und bei einem Update nur dieses wieder weiß färben.
Nur wird ja nichts angeklickt. Schlichtes mouseover und mouseout mit jeweiligem Funktionsaufruf. Und es werden ja auch nur Zellen behandelt die ein bestimmtes name-Attribute haben (col1 oder col12 etc.) Im dem Beispiel sind es halt 19 Stück untereinander und die horizontale wird über den tr tag gefärbt. Also sind quasi nur 20 Elemente gleichzeitig in Behandlung.

Oder hab ich da was falsch verstanden?
Mit Zitat antworten
  #6 (permalink)  
Alt 12-07-2008, 05:06
jmc
 PHP Junior
Links : Onlinestatus : jmc ist offline
Registriert seit: Mar 2006
Beiträge: 868
jmc befindet sich auf einem aufstrebenden Ast
Standard

Warum machst du sowas nicht mit css?
Das mit dem locked ist ausserdem ja wohl ziemlicher Unsinn, nicht? sobald du wieder über die Spalte fährst ist es automatisch wieder "unlocked". Das schlimmste ist aber wohl document.getElementsByName <-- nimm da was anderes und es läuft super.
Eine solch regelmässige Tabelle kannst du übrigens, wenn du so oder so Javascript verwendest auch gleich mit Javascript erstellen. Das spart Arbeit, Fehler und vermindert die Grösse der Datei.
Einfach mit Javascript erzeugen und referenzen gleich in einem Array mitspeichern.
Mit Zitat antworten
  #7 (permalink)  
Alt 12-07-2008, 12:30
1Einstein
 Newbie
Links : Onlinestatus : 1Einstein ist offline
Registriert seit: Jul 2008
Beiträge: 7
1Einstein ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von jmc
Warum machst du sowas nicht mit css?
Weil das mit CSS nicht geht?! Oder wie soll mir CSS berechnen welche Zeile mit welcher Spalte gekreuzt wird? Das ist ja kein einfaches über Kreuz legen wo sich grade der Mauszeiger befindet. Klär mich auf, ich lerne gerne dazu.


Zitat:
Das mit dem locked ist ausserdem ja wohl ziemlicher Unsinn, nicht? sobald du wieder über die Spalte fährst ist es automatisch wieder "unlocked".
Das steht ja hier auch gar nich zur Debatte. Das ist doch nur Spielerei Ausserdem geht das bei einem Kreuz wunderbar. So soll es auch dann später sein, dass nur ein Kreuz festgesetzt und man keine weiteren sehen kann solang.

Zitat:
Das schlimmste ist aber wohl document.getElementsByName <-- nimm da was anderes und es läuft super.
Sag mir was und sag mir wie, und ich mache es.

Zitat:
Eine solch regelmässige Tabelle kannst du übrigens, wenn du so oder so Javascript verwendest auch gleich mit Javascript erstellen. Das spart Arbeit, Fehler und vermindert die Grösse der Datei.
Einfach mit Javascript erzeugen und referenzen gleich in einem Array mitspeichern.
Die Tabelle wird mit PHP dann aus mehreren MySQL Tabellen erstellt. Das wollte ich eigentlich keinem Javascript überlassen. Das mit den Referenzen in ein Array musst du mir bitte erklären. Jede Zelle einen unique Name ? Und den dann in ein Array speichern? Und dann? Dann geht das ja nur noch mathematisch zu ermitteln welche Zellen hinterlegt werden müssen. Sicher auch nicht verkehrt, das könnte ich für die Darstellung dieser Tabelle mit FLEX (flash,AS) gebrauchen! Aber wie (Formel)?
Mit Zitat antworten
  #8 (permalink)  
Alt 12-07-2008, 16:29
jmc
 PHP Junior
Links : Onlinestatus : jmc ist offline
Registriert seit: Mar 2006
Beiträge: 868
jmc befindet sich auf einem aufstrebenden Ast
Standard

Mit css geht es... Stichwort "hover" mit mehreren Klassen.

Deine Tabelle sieht vollkommen regelmässig aus also könntest du das ganze ohne Probleme mit Javascript machen. Der Vorteil Wäre, dass du danach direkt einen Array erstellen könntest arr = Array(19) --> arr[0] = Array(19), ..., arr[18] = Array(19).
Dann hast du einen Array der folgendermassen aussieht arr[19(y)][19(x)].
Der Vorteil am Dynamischen Erstellen der Tabelle wäre, dass du die Referenz direkt beim erstellen eines Elementes im vorgesehenen arr[y][x] ablegen könntest. Wenn du sie nicht mit Javascript erstellst machst du am besten unique IDs: z.B. so:
Code:
for($y = 0; $y < 19; $y++){
 for($x = 0; $x < 19; $x++){
  echo "<bla id='unique_" . (($y << 5) | $x) . "'></bla>";
 }
}
Dann in Javascript:
for(y = 0; y < 19; y++){
 for(x = 0; x < 19; x++){
  arr[y][x] = document.getElementById("unique_" + ((y << 5) | x))
 }
}
Zugriff danach mittels arr[y][x];
Du könntest den Array auch auf 20 erweitern und dort noch dein "locked" speichern. Der Firefox hat so keine Probleme mehr.
Mit Zitat antworten
  #9 (permalink)  
Alt 12-07-2008, 17:22
1Einstein
 Newbie
Links : Onlinestatus : 1Einstein ist offline
Registriert seit: Jul 2008
Beiträge: 7
1Einstein ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ok, soweit ich das jetzt verstehe, übergeh ich mit dem Array die Notwendigkeit ständig ein "getElementsByName" in einer Schleife zu benutzen .. richtig?

Wenn dem so ist, wie bekomm ich aber dann die Zellen zum "leuchten" wenn ich über eine der Randzellen fahre? Und vor allem im genau richtigen Zusammenhang? Ich bekomm ja von der überfahrenen Zelle höchstens die ID. Das könnte jetzt zB eine Zahl sein. Wie kann ich aus der Zahl ermitteln welche Zellen alle geändert werden müssen.

Sorry wenn ich so blöde Fragen stell, aber mir erschlißt sich das nicht ganz. Und ich bin in JavaScript nicht so versiert.
Mit Zitat antworten
  #10 (permalink)  
Alt 12-07-2008, 19:13
jmc
 PHP Junior
Links : Onlinestatus : jmc ist offline
Registriert seit: Mar 2006
Beiträge: 868
jmc befindet sich auf einem aufstrebenden Ast
Standard

Code:
function highlight(t, v){
 if(!arr[19][t]){ // wenn "locked" arr[19][t] == true;
  var i, c = v ? "#DDD" : "#FFF";
  arr[0][t].style.backgroundColor = c;
  arr[t][0].style.backgroundColor = c;
  for(i = 1; i < 19; i += 2){
   arr[i][t].style.backgroundColor = c;
   arr[t][i].style.backgroundColor = c;
   arr[i + 1][t].style.backgroundColor = c;
   arr[t][i + 1].style.backgroundColor = c;
  }
 }
}
for(i = 1; i < 19; i++){
 arr[i][0].onclick = function(){arr[19][i] = !arr[19][i];}
 arr[0][i].onclick = function(){arr[19][i] = !arr[19][i];}
 arr[i][0].onmouseover = function(){highlight(i, true);}
 arr[0][i].onmouseover = function(){highlight(i, true);}
 arr[i][0].onmouseout= function(){highlight(i, false);}
 arr[0][i].onmouseout = function(){highlight(i, false);}
}
Ich habs nicht getestet, aber das sollte ungefähr stimmen. arr muss global sein.
Mit Zitat antworten
  #11 (permalink)  
Alt 12-07-2008, 19:41
1Einstein
 Newbie
Links : Onlinestatus : 1Einstein ist offline
Registriert seit: Jul 2008
Beiträge: 7
1Einstein ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ok, erst mal vielen Dank für die Mühe. Ich weis zwar immer noch nicht wie und warum das so funktioniert (also was im einzelnen da nun passiert), aber ich werd mich mal hinsetzen und es herrausfinden
Mit Zitat antworten
  #12 (permalink)  
Alt 13-07-2008, 15:00
jmc
 PHP Junior
Links : Onlinestatus : jmc ist offline
Registriert seit: Mar 2006
Beiträge: 868
jmc befindet sich auf einem aufstrebenden Ast
Standard

Wo weisst du nicht was passiert?
Mit Zitat antworten
  #13 (permalink)  
Alt 14-07-2008, 01:25
1Einstein
 Newbie
Links : Onlinestatus : 1Einstein ist offline
Registriert seit: Jul 2008
Beiträge: 7
1Einstein ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hat sich erledigt. Habs soweit begriffen Mir war nur nicht ganz klar wie das Array "aussieht", also wie die Daten darin abgelegt sind.

also Danke nochmals !
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

ADSMAN V3 - Werbe-Manager ansehen ADSMAN V3 - Werbe-Manager

ADSMAN V3 - mehr als nur ein Bannermanager! Banner, Textanzeigen und PagePeel Manager! Mit ADSMAN PRO haben Sie die Marketinglösung für eine effektive und effiziente Werbeschaltung mit messbaren Ergebnissen. Unterstützt werden Bannerformate in beliebi

25.10.2018 virtualsystem | Kategorie: PHP/ Bannerverwaltung
PHP News und Artikel Script V2

News schreiben, verwalten, veröffentlichen. Dies ist jetzt mit dem neuen PHP News & Artikel System von virtualsystem.de noch einfacher. Die integrierte Multi-User-Funktion und der WYSIWYG-Editor (MS-Office ähnliche Bedienung) ermöglichen...

25.10.2018 virtualsystem | Kategorie: PHP/ News
Top-Side Guestbook

Gästebuch auf Textbasis (kein MySQL nötig) mit Smilies, Ip Sperre (Zeit selbst einstellbar), Spamschutz, Captcha (Code-Eingabe), BB-Code, Hitcounter, Löschfunktion, Editierfunktion, Kommentarfunktion, Kürzung langer Wörter, Seiten- bzw. Blätterfunktion, V

22.10.2018 webmaster10 | Kategorie: PHP/ Gaestebuch
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 05:44 Uhr.