请教一关于画线问题,马上给分!!! 呵呵,用javascript似乎是很困难了,不过你可以插入一个applet,那就简单多了一个panel就搞定,你可以调用你熟悉的drawline(0,0,50,50)函数了,你说呢:) 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <html><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312"><title>emu's paint without vlm</title></head><body><button onclick="testDrawCurve()">画曲线</button><button onclick="testDrawArc()">画弧线</button><button onclick="testDrawCircle()">画圆</button><button onclick="testDrawLine()">画线</button><button onclick="testDrawRectangle()">画矩形</button><button onclick="testDrawPie()">画饼图</button><div id=div1></div><SCRIPT LANGUAGE="JavaScript"><!--function testDrawCurve() { div1.innerHTML = drawCurve(); }function testDrawArc() { div1.innerHTML =drawArc(150,150,100,0,270,"viloet") }function testDrawCircle() { div1.innerHTML = drawCircle(200,200,150,"blue"); }function drawCircle(x0,y0,radius,color) { return drawArc(x0,y0,radius,0,360,color) }function testDrawLine() { div1.innerHTML = drawLine(100,200,500,200,"yellow")+drawLine(300,100,300,400,"black")+drawLine(600,400,100,100,"violet") }function testDrawRectangle() { div1.innerHTML = drawRectangle(200,100,600,200,"blue")+drawRectangle(100,200,400,500,"red") }function testDrawPie() { div1.innerHTML = drawPie(300,200,120,0,45,"red"); }function drawLine(x0,y0,x1,y1,color) { var rs = ""; if (y0 == y1) //画横线 { rs = "<table style='top:"+y0+";left:"+x0+";position:absolute'><td bgcolor="+color+" height=3 width="+Math.abs(x1-x0)+"></td></table>"; } else if (x0 == x1) //画竖线 { rs = "<table style='top:"+y0+";left:"+x0+";position:absolute'><td bgcolor="+color+" width=1 height="+Math.abs(y1-y0)+"></td></table>"; } else { var lx = x1-x0 var ly = y1-y0 var l = Math.sqrt(lx*lx+ly*ly) rs = new Array(); for (var i=0;i<l;i+=1) { var p = i/l; var px = x0 + lx*p; var py = y0 + ly*p; rs[rs.length] = "<table style='top:"+py+";left:"+px+";position:absolute'><td bgcolor="+color+" height=3></td></table>"; } rs = rs.join(""); } return rs }function drawRectangle(x0,y0,x1,y1,color) { if (x0 == x1 || y0 == y1) return; if (x0>x1) {var t=x0;x0=x1;x1=t} if (y0>y1) {var t=y0;y0=y1;y1=t} return "<table style='top:"+y0+";left:"+x0+";position:absolute'><td bgcolor="+color+" width="+(x1-x0)+" height="+(y1-y0)+"></td></table>"; }function drawPie(x0,y0,radius,startAngle,endAngle,color) { var rs = drawArc(x0,y0,radius,startAngle,endAngle,color) startAngle = startAngle/360*Math.PI*2; endAngle = endAngle/360*Math.PI*2; var startx=Math.sin(startAngle)*radius+x0; var endx=Math.sin(endAngle)*radius+x0; var starty=Math.cos(startAngle)*radius+y0; var endy=Math.cos(endAngle)*radius+y0; rs += drawLine(x0,y0,startx,starty,color) rs += drawLine(x0,y0,endx,endy,color) return rs; }function drawArc(x0,y0,radius,startAngle,endAngle,color) { rs = new Array(); tmpar = new Array(); startAngle = startAngle/360*Math.PI*2; endAngle = endAngle/360*Math.PI*2; for (var i=startAngle;i<endAngle;i+=(1/radius)) { var dx = Math.sin(i)*radius+x0; var dy = Math.cos(i)*radius+y0; rs[rs.length] = "<table style='top:"+dy+";left:"+dx+";position:absolute'><td bgcolor="+color+" height=3></td></table>"; } return (rs.join("")); }function drawCurve() { var rs = new Array(); for (var i=0;i<2*Math.PI;i+=.02) { var x = 300-Math.sin(i)*100 var y = 300-Math.cos(i)*100 rs[rs.length] = "<table style='top:"+x+";left:"+(i*100+90)+";position:absolute'><td bgcolor=blue height=3></td></table>"; rs[rs.length] = "<table style='top:"+y+";left:"+(i*100+90)+";position:absolute'><td bgcolor=violet height=3></td></table>"; } return rs.join(""); }//--></SCRIPT></body></html> 我对javacscript不是很清楚啊!!!能不能说的详细些? 这个图片切换的JS在IE6不能用... 关于js加载xml,xsl并转换的问题 JQUERY li问题 jquery “或者”怎么表达? 求一个简单的“在线文本”编辑器! javascript能不能像C#一样用goto 语句跳出深嵌套循环。 贴一个XMLDOM的异步加载例子,请大家进来拍砖,呵呵,没分散了 急~~~请问如何在CLICK按钮后,让页面弹出保存页面 寻找一个效果! highcharts 一个页面动态绘制多个图 javascript如何读写cookie 在客户端实现画线
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>emu's paint without vlm</title>
</head>
<body>
<button onclick="testDrawCurve()">画曲线</button>
<button onclick="testDrawArc()">画弧线</button>
<button onclick="testDrawCircle()">画圆</button>
<button onclick="testDrawLine()">画线</button>
<button onclick="testDrawRectangle()">画矩形</button>
<button onclick="testDrawPie()">画饼图</button>
<div id=div1></div>
<SCRIPT LANGUAGE="JavaScript">
<!--
function testDrawCurve()
{
div1.innerHTML = drawCurve();
}
function testDrawArc()
{
div1.innerHTML =drawArc(150,150,100,0,270,"viloet")
}
function testDrawCircle()
{
div1.innerHTML = drawCircle(200,200,150,"blue");
}
function drawCircle(x0,y0,radius,color)
{
return drawArc(x0,y0,radius,0,360,color)
}
function testDrawLine()
{
div1.innerHTML = drawLine(100,200,500,200,"yellow")+drawLine(300,100,300,400,"black")+drawLine(600,400,100,100,"violet")
}
function testDrawRectangle()
{
div1.innerHTML = drawRectangle(200,100,600,200,"blue")+drawRectangle(100,200,400,500,"red")
}
function testDrawPie()
{
div1.innerHTML = drawPie(300,200,120,0,45,"red");
}function drawLine(x0,y0,x1,y1,color)
{
var rs = "";
if (y0 == y1) //画横线
{
rs = "<table style='top:"+y0+";left:"+x0+";position:absolute'><td bgcolor="+color+" height=3 width="+Math.abs(x1-x0)+"></td></table>";
}
else if (x0 == x1) //画竖线
{
rs = "<table style='top:"+y0+";left:"+x0+";position:absolute'><td bgcolor="+color+" width=1 height="+Math.abs(y1-y0)+"></td></table>";
}
else
{
var lx = x1-x0
var ly = y1-y0
var l = Math.sqrt(lx*lx+ly*ly)
rs = new Array();
for (var i=0;i<l;i+=1)
{
var p = i/l;
var px = x0 + lx*p;
var py = y0 + ly*p;
rs[rs.length] = "<table style='top:"+py+";left:"+px+";position:absolute'><td bgcolor="+color+" height=3></td></table>";
}
rs = rs.join("");
}
return rs
}
function drawRectangle(x0,y0,x1,y1,color)
{
if (x0 == x1 || y0 == y1) return;
if (x0>x1) {var t=x0;x0=x1;x1=t}
if (y0>y1) {var t=y0;y0=y1;y1=t}
return "<table style='top:"+y0+";left:"+x0+";position:absolute'><td bgcolor="+color+" width="+(x1-x0)+" height="+(y1-y0)+"></td></table>";
}
function drawPie(x0,y0,radius,startAngle,endAngle,color)
{
var rs = drawArc(x0,y0,radius,startAngle,endAngle,color)
startAngle = startAngle/360*Math.PI*2;
endAngle = endAngle/360*Math.PI*2;
var startx=Math.sin(startAngle)*radius+x0;
var endx=Math.sin(endAngle)*radius+x0;
var starty=Math.cos(startAngle)*radius+y0;
var endy=Math.cos(endAngle)*radius+y0;
rs += drawLine(x0,y0,startx,starty,color)
rs += drawLine(x0,y0,endx,endy,color)
return rs;
}
function drawArc(x0,y0,radius,startAngle,endAngle,color)
{
rs = new Array();
tmpar = new Array();
startAngle = startAngle/360*Math.PI*2;
endAngle = endAngle/360*Math.PI*2;
for (var i=startAngle;i<endAngle;i+=(1/radius))
{
var dx = Math.sin(i)*radius+x0;
var dy = Math.cos(i)*radius+y0;
rs[rs.length] = "<table style='top:"+dy+";left:"+dx+";position:absolute'><td bgcolor="+color+" height=3></td></table>";
}
return (rs.join(""));
}
function drawCurve()
{
var rs = new Array();
for (var i=0;i<2*Math.PI;i+=.02)
{
var x = 300-Math.sin(i)*100
var y = 300-Math.cos(i)*100
rs[rs.length] = "<table style='top:"+x+";left:"+(i*100+90)+";position:absolute'><td bgcolor=blue height=3></td></table>";
rs[rs.length] = "<table style='top:"+y+";left:"+(i*100+90)+";position:absolute'><td bgcolor=violet height=3></td></table>";
}
return rs.join("");
}
//-->
</SCRIPT>
</body>
</html>
能不能说的详细些?