ダイナミックにdiVを追加し、ドラッグ機能を実現


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<script>
   function creatediv()
   {
        var obj = document.createElement("div");
  classA.call(obj);  
  bd.appendChild(obj);
   }
 
 function classA(){
   
  this.style.width="100";
  this.style.height="100";
  this.style.background="blue";
  this.style.border="solid 10 red ";
  //this.style.display="inline";
  this.style.position="absolute";   //relative
  //   this.style.left=50;
  //   this.style.top=50;
  this.onmousedown=function()
                   {down(this)};
  this.onmousemove=function()
                   {move(this)};
  this.onmouseup=function()
                    {up(this)};

  
 }
 
 var flag=0;
 function down(aa){
  flag=1;
 }
 function move(aa)
 {
     if(flag==1)
  {
         aa.style.left=event.x-50;
   aa.style.top=event.y-50;
   }
 }
 function up(aa){
  flag=0;
 }
</script>
</HEAD>

<BODY id="bd" >
<input type ="button"  onclick="creatediv();"  value=" " /> 
</BODY>
</HTML>

down(),move(),up()の3つの関数はドラッグ機能を実現しています!実はあなたはそれを必要としません.
 
callメソッドはコールバックメソッドで、callをクリックするたびにclassA()という関数をコールバックします.