Javascript 如何创建简单的图形编辑器?
我最近开始学习javascript。现在我有一个任务。。。这似乎比我能做的更多 我需要建立一个图形编辑器,它可以在图像上添加一个矩形,可以修改(移动边框) 到目前为止,我得到的是开始时的getXY位置和结束时的img id。。。就这样Javascript 如何创建简单的图形编辑器?,javascript,Javascript,我最近开始学习javascript。现在我有一个任务。。。这似乎比我能做的更多 我需要建立一个图形编辑器,它可以在图像上添加一个矩形,可以修改(移动边框) 到目前为止,我得到的是开始时的getXY位置和结束时的img id。。。就这样 <html> <head> <script type="text/javascript"> window.onload = init; function init() { if (window.Event) { d
<html>
<head>
<script type="text/javascript">
window.onload = init;
function init() {
if (window.Event) {
document.captureEvents(Event.MOUSEMOVE);
}
document.onclick = getXY;
}
function getXY(e) {
x = (window.Event) ? e.pageX : event.clientX;
y = (window.Event) ? e.pageY : event.clientY;
document.getElementById(document.getElementById('position1').value === '' ? 'position1' : 'position2').value = x+":"+y;
}
function getID(oObject)
{
var id = oObject.id;
document.position.gei.value = id;
}
function markIt()
{
var mark = document.createElement('div');
mark.id = 'mark';
mark.style.background = '#fff';
document.getElementById('wrapper').appendChild('mark');
}
</script>
</head>
<body>
<div id="kontener">
<form name="position">
<input name="position1" id="position1" type="text" /><input name="position2" id="position2" type="text" /><input name="gei" type="text" id="getElementId" />
</form>
<div id="wrapper"><img src="ferrari_01.jpg" width="1000" height="650" ismap="ismap" id="ferrari" onclick="getID(this);markIt(mark);"/></div>
<div id="wrapper"><img src="peugeot.jpg" width="100" height="100" id="peugeot" onclick="getID(this);"/></div>
</div>
</body>
</html>
window.onload=init;
函数init(){
if(window.Event){
document.captureEvents(Event.MOUSEMOVE);
}
document.onclick=getXY;
}
函数getXY(e){
x=(window.Event)?e.pageX:Event.clientX;
y=(window.Event)?e.pageY:Event.clientY;
document.getElementById(document.getElementById('position1')。值=='''position1':'position2')。值=x+“:”+y;
}
函数getID(oObject)
{
var id=oObject.id;
document.position.gei.value=id;
}
函数markIt()
{
var mark=document.createElement('div');
mark.id='mark';
mark.style.background='#fff';
document.getElementById('wrapper').appendChild('mark');
}
你能用jsfiddle显示吗?你不能在img
中附加div
,因为它不能包含任何内容。您需要在图像周围使用一个包装器div
,并将带有“移动边框”的div
附加到包装器中。我已经更改了它,现在是任何img文件的包装器。但我仍然没有div来创建矩形。对于jsfiddle[link此处提供的fiddle链接似乎已断开(地址中有一个axtra]
)。请看一下你的控制台,你会发现错误…奇怪。。。但我有一个新的: