Подскажите ответ на такой вопрос:
есть скрипт для перетаскивания рисунков, вопрос такой - как сделать, например, всплывающее окно типа "правильно", если рисунки перетасканы правильно в определенных последовательностях. например есть рисунки стенка, крыша, труба. надо перетащить их так чтобы дверь находилась на стенке, крыша касалась верхней грани стенки, а труба касалась крыши. как это сделать? причем желательно чтобы сам домик не зависел от конкретной точки экрана, а только взаимное расположение рисунков играло роль.
если можно, пример из простейших деталей, например, два кубика соприкасаются гранями)
изначальный скрипт, позволяющий перетаскивать рисунки в любом порядке:
1. Создаём файлы таблицы стилей drag.css:
.drag{
position:relative;
cursor:hand;
z-index: 100;
}
подгружаем:
<link rel="stylesheet" href="ПУТЬ К ФАЙЛУ/drag.css" type="text/css" />
2. Сам скрипт drag.js написанный на языке javascript
:
var dragobject={
z: 0, x: 0, y: 0, offsetx : null, offsety : null, targetobj : null, dragapproved : 0,
initialize:function(){
document.onmousedown=this.drag
document.onmouseup=function(){this.dragapproved=0}
},
drag:function(e){
var evtobj=window.event? window.event : e
this.targetobj=window.event? event.srcElement : e.target
if (this.targetobj.className=="drag"){
this.dragapproved=1
if (isNaN(parseInt(this.targetobj.style.left))){this. targetobj.style.left=0}
if (isNaN(parseInt(this.targetobj.style.top))){this.t argetobj.style.top=0}
this.offsetx=parseInt(this.targetobj.style.left)
this.offsety=parseInt(this.targetobj.style.top)
this.x=evtobj.clientX
this.y=evtobj.clientY
if (evtobj.preventDefault)
evtobj.preventDefault()
document.onmousemove=dragobject.moveit
}
},
moveit:function(e){
var evtobj=window.event? window.event : e
if (this.dragapproved==1){
this.targetobj.style.left=this.offsetx+evtobj.clie ntX-this.x+"px"
this.targetobj.style.top=this.offsety+evtobj.clien tY-this.y+"px"
return false
}
}
}
dragobject.initialize()
подгружаем:
<script language="JavaScript" type="text/javascript" src="ПУТЬ К ФАЙЛУ/drag.js"></script>
3. Вставляем файлы с изображениями в нужное место:
<img src="ПУТЬ К ФАЙЛУ1/1.png" class="drag">
<img src="ПУТЬ К ФАЙЛУ2/2.png" class="drag">
<img src="ПУТЬ К ФАЙЛУ3/3.png" class="drag">