Index: /taggingreloaded/files/js/TaggingReloaded.class.js
===================================================================
--- /taggingreloaded/files/js/TaggingReloaded.class.js (revision 39)
+++ /taggingreloaded/files/js/TaggingReloaded.class.js (revision 40)
@@ -10,9 +10,11 @@
 	// construct
 	var root = myroot; // reference to div object
+	root.onmouseover = function(event) { dowheel() };
+	root.onmouseout = function(event) { stopwheel() };
+	root.style.position = 'relative';
 	document.onmousemove = function(event) { drag(event) };
 	document.onmouseup = function(event) { dragstop(event) };
 	
 	var scrollobject, dragobject;
-	var elems = new Array();
 	var timer = new Array();
 	var limitmin = 30;
@@ -43,4 +45,6 @@
 		var val = ob.value.split(" ");
 		ob.value = ''; // reset input field
+		
+		var elems = root.getElementsByTagName('div');
 		
 		for(var i=0; i<elems.length; i++) {
@@ -67,16 +71,15 @@
 	 */
 	this.add = function(val, size) {
-		var i = elems.length;
-		elems[i] = document.createElement('div');
-		elems[i].onmouseover = function (event) { activate(this) };
-		elems[i].onmouseout = function (event) { deactivate() };
-		elems[i].onmousedown = function (event) { dragstart(this) };
-		elems[i].style.position = 'absolute';
-		elems[i].style.left = Math.round(Math.random(10,100)*350)+'px'
-		elems[i].style.top = Math.round(Math.random(10,100)*250)+'px';
-		elems[i].style.cursor = 'pointer';
-		elems[i].style.fontSize = size+'%';
-		elems[i].style.color = 'rgb(0,0,0)';
-		elems[i].appendChild(document.createTextNode(val));
+		var div = document.createElement('div');
+		div.onmouseover = function (event) { activate(this) };
+		div.onmouseout = function (event) { deactivate() };
+		div.onmousedown = function (event) { dragstart(this) };
+		div.style.position = 'absolute';
+		div.style.left = Math.round(Math.random(10,100)*350)+'px'
+		div.style.top = Math.round(Math.random(10,100)*250)+'px';
+		div.style.cursor = 'pointer';
+		div.style.fontSize = size+'%';
+		div.style.color = 'rgb(0,0,0)';
+		div.appendChild(document.createTextNode(val));
 
 		var input = document.createElement('input');
@@ -84,5 +87,5 @@
 		input.setAttribute('name', 'taggingname[]');
 		input.setAttribute('value', val);
-		elems[i].appendChild(input);
+		div.appendChild(input);
 
 		var input2 = document.createElement('input');
@@ -90,9 +93,9 @@
 		input2.setAttribute('name', 'taggingval[]');
 		input2.setAttribute('value', size);
-		elems[i].appendChild(input2);
-
-		root.appendChild(elems[i]);
-		
-		return elems[i];
+		div.appendChild(input2);
+
+		root.appendChild(div);
+		
+		return div;
 	}
 
@@ -100,5 +103,5 @@
 	 * add scroll listener
 	 */
-	this.dowheel = function(){
+	var dowheel = function(){
 		// mozilla
 		if (window.addEventListener){
@@ -113,5 +116,5 @@
 	 * remove scroll listener
 	 */
-	this.stopwheel = function(){
+	var stopwheel = function(){
 		// mozilla
 		if (window.removeEventListener) {
