Ich verwende Tabellen in meinem Dokument, und ich möchte in der Lage sein, einen Benutzer ein neues Element zu einer Liste senden, dann wird es "automatisch" an der Spitze der Liste erscheinen (ja, das wäre einfacher mit DIVs aber arbeite mit dem, was ich habe).Gibt es eine browserübergreifende Möglichkeit, die Opazität bei der Verwendung von jquery's clone() zu ignorieren?
ich jQuery bin mit und clone()
eine Kopie der letzten Tabellenzeile zu erstellen, dann fadeIn()
mit dem neuen Element anzuzeigen, nachdem ich es an die Spitze der Liste aktualisieren und hinzuzufügen. Da intern jQuery Elemente (unter der Annahme von DIVs) in "block" umwandelt, ändere ich auch die css-Klasse in "table-row". Es funktioniert gut.
Der gesamte Code ist hier:
var row = $("tbody tr:first").clone().hide(); // clone and then set display:none
row.children("td[class=td-date]").html("today");
// set some properties
row.children("td[class=td-data]").html("data");
row.children("td[class=td-type]").html("type");
// fadeIn new row at the top of the table.
row.insertBefore("tbody tr:first").stop().fadeIn(2000).css("display","table-row");
Das Problem ist, dass wenn ich den Prozess zu schnell laufen - das heißt, bevor der fadeIn abgeschlossen ist, die „Klon()“ Befehl als auch die Opazität Klonen endet.
Ich kann es tatsächlich bekommen in Firefox arbeiten mit von der ersten Zeile oben anzupassen:
var row = $("tbody tr:first").clone().css("opacity","1").hide();
nun Meine Sorge ist, dass ich nicht sicher bin, dass irgendetwas davon effizient durchgeführt wird, und/oder Diese "Opazität" ist cross-browser-sicher, auf die man sich verlassen kann.
Hat jemand so etwas schon einmal gemacht, und können Sie irgendwelche Hinweise auf einen zuverlässigeren Ansatz bieten?
Funktioniert nicht in Firefox, bisher scheint die CSS ("Opazität", 1) die beste Option zu sein, aber noch nicht mit IE getestet. – FilmJ