这个主要使用Math的atan2(),和以前见到的用js写的效果基本一样的,as3如下(箭头为as绘制的): var sp:Sprite; function SetRota() { sp=Drawt(); sp.x=180; sp.y=125; addChild(sp); stage.addEventListener(MouseEvent.MOUSE_MOVE,clickhandle); } //定义事件侦听函数 function clickhandle(evt:MouseEvent):void { //计算旋转角度 var dx:Number = mouseX - sp.x; var dy:Number = mouseY - sp.y; var angle:Number = Math.atan2(dy, dx); //控制旋转 sp.rotation = angle * 180 / Math.PI; } //构建箭头 function Drawt():Sprite { var s:Sprite=new Sprite(); s.graphics.lineStyle(); s.graphics.beginFill(0x9900ff); s.graphics.moveTo(0,-4); s.graphics.lineTo(20,-4); s.graphics.lineTo(20,-8); s.graphics.lineTo(25,0); s.graphics.lineTo(20,8); s.graphics.lineTo(20,4); s.graphics.lineTo(0,4); s.graphics.lineTo(0,-4); s.graphics.endFill(); return s; } SetRota();