Aufruf einer Funktion eines userdefinierten globalen Objektes

zoro17

Grünschnabel
Hallo zusammen,
habe eine Aufgabe, die meine momentanen JS Fähigkeiten (noch) übersteigen.
Ich benutze folgenden Javascript-Code:
http://www.gotproject.com/blog/files/dragdrop/webkitdragdrop.js

Damit kann man Objekte (divs) per Drag&Drop durch die Gegend schieben.

Dabei wird die globale JS Variable "webkit_tools" ganz zu Beginn erzeugt und mit
getDimensions: function(element) die Ausmasse des Objektes (div) bestimmt, das
geschoben wird.
Das funktioniert sehr gut, solange die Form des divs einigermaßen
quadratisch ist. Ich habe aber auch sehr längliche Objekte und muss daher
width und height (element.offsetWidth und -Height des divs) manipulieren.

Wenn ich mit typeof getDimensions von webkit_tools abfrage, bekommt ich, wie zu erwarten war, "function" zurück. Durch welchen Aufruf kann ich die beiden Werte dieser globalen Variable verändern?

Über ein Feedback würde ich mich freuen.

Danke und Gruß
 
Ich bin etwas weitergekommen. Es handelt sich hierbei um eine "Klasse", die Funktionen besitzt.
Dabei werden wohl in der Funktion, um die es bei mir geht, Werte gesetzt.
Ich sollte an diese Werte rankommen und dynamisch ändern können.
Leider kann ich in meinem Projekt nicht debuggen, sonst könnte ich die Struktur selber auslesen.

Vielleicht kann mir jemand helfen.
Gruß
 
Hi,

hast du es schon mal mit
Code:
webkit_tools.getDimensions(element).width;
webkit_tools.getDimensions(element).height;
versucht?

Ciao
Quaese
 
Hallo Quaese,

danke für die Info. Ich habs mal ausprobiert.
Als Rückmeldung bekomme ich nur 'function' zurück.

Gruß
 
Hi,

kann ich nicht nachvollziehen.

Folgendes Konstrukt gibt mir die Dimensionen des DIVs wieder:
Code:
<html>
<head>
<title>www.tutorials.de</title>
<meta name="author" content="Quaese">
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
<style type="text/css">
  <!--
#showIt{
  width: 400px;
  height: 300px;
  background: #efefe0;
}
 //-->
</style>
<script src="http://www.gotproject.com/blog/files/dragdrop/webkitdragdrop.js" type="text/javascript"></script>
<script type="text/javascript">
  <!--
window.onload = function(){
  var element = document.getElementById("showIt");
  alert(webkit_tools.getDimensions(element).width + " x " + webkit_tools.getDimensions(element).height);
}
 //-->
</script>
</head>
<body>
<div id="showIt">&nbsp;</div>
</body>
</html>
Ciao
Quaese
 
Hallo Quaese,

danke für Die Antwort.
Hab mir meinen Code nochmal angeschaut. Kein Erfolg.

Werde morgen Dein Beispiel-Script testen, vielleicht entdecke ich dann bei mir was.
Habe mir bisher anders geholfen, indem ich die Objekte, die ich schiebe,
gleichgroß machte (durchsichtige Bereiche), dann gehts.

Schönen Abend noch.
Gruß
 
Hallo Quaese,

kam erst jetzt dazu. Hab's probiert:
Die Funktion, die das machen sollte hat als Parameter das relevante Element bekommen.
Da gings nicht. Wenn ich jetzt das Element mit document.getElementById "nochmals" anpacke,
dann geht's.
Leider kann ich die Werte webkit_tools.getDimensions(element).width und height nicht
im Speicher überschreiben.
Bin noch am Tüfteln.

Danke und Gruß
 
Hallo Quaese,
hab es jetzt gelöst. Du hast sie mir indirekt geliefert.
Da webkit_tools nur einmal beim Start aufgerufen wird, habe ich den falschen Weg eingeschlagen,
die gespeicherten Werte zu manipulieren.
Durch Dein Beispiel kann ich webkit_tools immer dann aufrufen, wenn es ein drop-Ereignis gibt.
Bei diesem Ereignis kann ich jetzt die Manipulation vornehmen, nicht erst hinterher.
So klappts.

Gruß
 

Neue Beiträge

Zurück