Core: Array.length funktioniert nicht (array.length = undefined)

Beitrag lesen

Hi Leute,
ich bin ein Javascript-Anfänger und spiele mich gerade mit jQuery
und meinm Versuch YouTubefilme - in Bilder um zu wandeln um sie
per div (contentEditable) herum verschieben zu können.
Nein - Ich möchte keinen WYSIWYG-Editor verwenden :)

  
			$(document).ready(function() {  
			  
							  
					  var $flag = true;  
					  var $video_array = new Array();  
					  
					  $("#hideButton").click(function(flag) {  
								  
								if ($flag){  
									  
										$("#div1").show("slow", function() {});  
										$flag = false;  
										  
								} else {  
									  
										$("#div1").hide("slow", function() {});  
										$flag = true;  
								}  
								  
					  });  
					  
					  
					  
					  $('#youtube_add').click(function($video_array){  
								  
									$video_link = $('#youtube_link').val();  
	  
									  
									$position 	 = $video_link.indexOf("width");  
									$video_width  = $video_link.substring($position+7, $position+10);  
									  
									$position 	 = $video_link.indexOf("height");  
									$video_height = $video_link.substring($position+8, $position+11);  
									  
									  
									$img		   = document.createElement('img');  
									$img.src       = "#";  
									$img.width 	   = $video_width;  
									$img.height    = $video_height;  
									$img.id 	   = "video" + $video_array.length;  
									  
									var $a_index = $video_array.length;  
									$video_array[$a_index] = new Array();  
									$video_array[$a_index]['video'] = $video_link;  
									$video_array[$a_index]['id'] 	 = $img.id;  
									  
									  
									$('#youtube_link').val("");  
									$('#divtest').append($img);  
									$("#div1").hide("slow", function() {});  
									$flag = true;  
									  
									  
									  
					  });  
					  
					  
					  
					  
					  onsubmit = function ($video_array){  
								  
										  
									$test = $('#divtest').html();  
									  
									alert('Submit');  
									console.log($video_array.length);  
									return false;  
									  
									for (i = 0; i < $video_array.length; i++){  
									  
												$alert(i);  
										  
									}  
									  
									$('#divtest').append ("<textarea name='text'>"+test +"</textarea>");  
									return false;  
									  
								  
					   }  
					  
					  
			});  

Mein erstes Problem war dass ich:
"$a_index = $video_array.length;" erstellen musste da ich sonst nicht
das Array variable zu seiner Größe befüllen konnte! Woher kommt das?
Warum ging $video_array[$video_array.length] = new Array(); nicht?

Und meine zweite Frage ist:
Warum ist die $video_array.length in der submit funktion undefiniert?

Hoffe ihr könnt mir helfen.