php.de

Zurück   php.de > Webentwicklung > JavaScript, Ajax und mehr

JavaScript, Ajax und mehr dynamisches Scripten und Interaktion auf Clientebene

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 18.01.2012, 12:02  
Erfahrener Benutzer
 
Registriert seit: 25.09.2009
Beiträge: 2.114
PHP-Kenntnisse:
Fortgeschritten
BlackScorp wird schon bald berühmt werdenBlackScorp wird schon bald berühmt werden
Standard [Erledigt] Underscored objekteigenschaften clonen

Hallo leute,

ich versuche gerade ein Objekt zu clonen in javascript, das Objekt hat eigenschaften mit _ bzw __ das Problem dabei ist dass diese eigenschaften nicht kopiert werden. hier mal ein Beispiel:

http://jsfiddle.net/SCLDr/5/

wenn ihr im Firebug euch das Original anschaut hat es eigenschaften wie __image, _w,_h usw..

danach gebe ich den clone aus und die eigenschaften sind leer, das komische aber ist, wenn ich clone.__image anzeige, so hat diese eigenschaft ein wert.

kann mir einer sagen wieso JS so auf die underscores reagiert? und wie man das umgehen kann?

MFG
__________________
Mein kleines Projekt
-Cruel Online-
5 von 3 Leuten können kein Bruchrechnen
BlackScorp ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 18.01.2012, 16:57  
Erfahrener Benutzer
 
Benutzerbild von jspit
 
Registriert seit: 19.08.2011
Beiträge: 701
PHP-Kenntnisse:
Anfänger
jspit wird schon bald berühmt werden
Standard

Zitat:
Zitat von BlackScorp Beitrag anzeigen
kann mir einer sagen wieso JS so auf die underscores reagiert? und wie man das umgehen kann?
JS kann sehr gut mit underscores umgehen, dein framework (jquery?) vermutlich nicht. Dies hab ich mal probiert, funktioniert ohne Probleme:
PHP-Code:
<html>
<
head>
<
title>Test</title>
<
style type="text/css">
.
_myclass {colorblue;}
</
style>
</
head>
<
body>
<
span id="Dolly" class="_myclass">Dolly </span>
<
script type="text/javascript">
Dolly2 document.getElementById("Dolly").cloneNode(true);
Dolly2.innerHTML "Dolly2 hat die class "+Dolly2.className;
document.body.appendChild(Dolly2);
</script>
</body></html> 
jspit ist offline   Mit Zitat antworten
Alt 18.01.2012, 17:04  
Erfahrener Benutzer
 
Registriert seit: 25.09.2009
Beiträge: 2.114
PHP-Kenntnisse:
Fortgeschritten
BlackScorp wird schon bald berühmt werdenBlackScorp wird schon bald berühmt werden
Standard

ne es geht nicht darum ein HTML element zu kopieren, sondern ein objekt zu kopieren. habs gerade ausprobiert, hast recht das Framework macht da irgendwas falsch.. muss ich mir mal ansehen, es ist nicht jQuery ist ist Crafty
__________________
Mein kleines Projekt
-Cruel Online-
5 von 3 Leuten können kein Bruchrechnen
BlackScorp ist offline   Mit Zitat antworten
Alt 18.01.2012, 17:08  
Erfahrener Benutzer
 
Registriert seit: 26.11.2008
Beiträge: 264
dsentker befindet sich auf einem aufstrebenden Ast
Standard

Führende Unterstriche sollten lt. Spezifikation kein Problem sein, jedenfalls in Klassennamen. IDs dürfen nur mit [a-Z] beginnen. Mit Ausnahme auf HTML5.
__________________
dsentker ist offline   Mit Zitat antworten
Alt 18.01.2012, 17:27  
Erfahrener Benutzer
 
Benutzerbild von jspit
 
Registriert seit: 19.08.2011
Beiträge: 701
PHP-Kenntnisse:
Anfänger
jspit wird schon bald berühmt werden
Standard

OT:
Zitat:
Zitat von BlackScorp Beitrag anzeigen
ne es geht nicht darum ein HTML element zu kopieren, sondern ein objekt zu kopieren.
typeof(Dolly2) === "object"
jspit ist offline   Mit Zitat antworten
Alt 18.01.2012, 20:33  
Erfahrener Benutzer
 
Registriert seit: 28.05.2008
Beiträge: 2.094
PHP-Kenntnisse:
Fortgeschritten
rudygotya ist einfach richtig nettrudygotya ist einfach richtig nettrudygotya ist einfach richtig nettrudygotya ist einfach richtig nettrudygotya ist einfach richtig nett
Standard

Kopier einfach mit jQuery :
PHP-Code:
var clone= $.extend(
  
// deep copy - falls du keine referenzen willst
  
true
  
// target, also später var clone
  
{}, 
  
// obj1, bswp: defaults
  
id1type "foo" },
  
// obj2
  
id}
); 
Zitat:
>>> console.log(clone)
Object { id=2, type="foo"}
2 Unterstrichte würd ich dennoch nicht verwenden. Vom Gefühl her sind das eigentlich eher reservierte Properties, wie z.B. __proto__

Grüße
__________________
++++ Wieder einer ins Netz gegangen: Phishers Fritz zufrieden ++++
Blog
rudygotya ist offline   Mit Zitat antworten
Alt 19.01.2012, 08:55  
Erfahrener Benutzer
 
Registriert seit: 25.09.2009
Beiträge: 2.114
PHP-Kenntnisse:
Fortgeschritten
BlackScorp wird schon bald berühmt werdenBlackScorp wird schon bald berühmt werden
Standard

Zitat:
Zitat von rudygotya Beitrag anzeigen
Kopier einfach mit jQuery :
das würde ich nur zu gern, aber das Framework soll ja unabhängig von jQuery laufen
__________________
Mein kleines Projekt
-Cruel Online-
5 von 3 Leuten können kein Bruchrechnen
BlackScorp ist offline   Mit Zitat antworten
Alt 19.01.2012, 11:47  
Erfahrener Benutzer
 
Benutzerbild von Wolfsblut
 
Registriert seit: 30.12.2011
Beiträge: 208
PHP-Kenntnisse:
Fortgeschritten
Wolfsblut wird schon bald berühmt werden
Standard

Zitat:
Zitat von BlackScorp Beitrag anzeigen
das würde ich nur zu gern, aber das Framework soll ja unabhängig von jQuery laufen
Kannst Du nicht beide Wünsche unter einen Hut bringen?

Wollte in meinem auch unabhängig von einer spezifischen js-library bleiben...aber dennoch schnell voran kommen, dass Rad nicht noch einmal, ect. pp.

Hab dann erstmal jQuery "gemappt" - in Fällen wo der Nutzen hoch genug war.

In Deinem Fall sowas:
Code:
myFW.utils = {
   [...]
   clone: function ( what ) {
      return jQuery.extend( true, {}, what );
   },
   [...]
Ein zusätzlicher Funtionsaufruf vs. Flexibilität ect.

Später kann man den Code immer noch gegen eigenen tauschen ect.
Wolfsblut ist offline   Mit Zitat antworten
Alt 19.01.2012, 12:56  
Erfahrener Benutzer
 
Registriert seit: 25.09.2009
Beiträge: 2.114
PHP-Kenntnisse:
Fortgeschritten
BlackScorp wird schon bald berühmt werdenBlackScorp wird schon bald berühmt werden
Standard

naja so einfach gehts nicht, dieses Crafty Framework ist ja nicht von mir und damit die mein Pullrequest annehmen muss der Code ohne externen libs funktionieren
__________________
Mein kleines Projekt
-Cruel Online-
5 von 3 Leuten können kein Bruchrechnen
BlackScorp ist offline   Mit Zitat antworten
Alt 19.01.2012, 13:05  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Dein JSFiddle funktioniert nicht
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine 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
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Überschrift Clonen und nach oben zählen rejoice JavaScript, Ajax und mehr 1 03.02.2011 14:49
Nodes clonen - Internet-Explorer R4v3r HTML, Usability und Barrierefreiheit 0 24.07.2007 17:09
Datenfeld clonen? tinchen Datenbanken 4 25.05.2006 17:13
persistente MySQL Verbindung und clonen HStev PHP-Fortgeschrittene 16 22.11.2005 13:24


Alle Zeitangaben in WEZ +2. Es ist jetzt 12:03 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum