Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
wyciąganie współrzędnych
#1
Witajcie! Mam kod do przesuwania elementów (draggable).

Kod:
<!-- Script by hscripts.com -->
<!-- Copyright of HIOXINDIA -->
<!-- More scripts @www.hscripts.com -->

<script type="text/javascript">
var ie=document.all;
var nn6=document.getElementById&&!document.all;
var isdrag=false;
var x,y;
var dobj;
function movemouse(e)
{
  if (isdrag)
  {
    dobj.style.left = nn6 ? tx + e.clientX - x : tx + event.clientX - x;
    dobj.style.top  = nn6 ? ty + e.clientY - y : ty + event.clientY - y;
    return false;
  }
}
function selectmouse(e)
{
  var fobj       = nn6 ? e.target : event.srcElement;
  var topelement = nn6 ? "HTML" : "BODY";
  while (fobj.tagName != topelement && fobj.className != "dragme")
  {
    fobj = nn6 ? fobj.parentNode : fobj.parentElement;
  }
  if (fobj.className=="dragme")
  {
    isdrag = true;
    dobj = fobj;
    tx = parseInt(dobj.style.left+0,10);
    ty = parseInt(dobj.style.top+0,10);
    x = nn6 ? e.clientX : event.clientX;
    y = nn6 ? e.clientY : event.clientY;
    document.onmousemove=movemouse;
    return false;
  }
}
document.onmousedown=selectmouse;
document.onmouseup=new Function("isdrag=false");
</script>

<!-- Script by hscripts.com -->

<style type="text/css">
        .dragme{position:relative;}
</style>

<table><tr><td align="center">
<img src="./flower.jpg" width="270" height="203" alt="drag-and-drop image script" style="cursor:move;" title="drag-and-drop image script" class="dragme"><a href="http://hscripts.com" style="text-decoration:none;cursor:pointer;font-size:12px;color:green;">H</a>
</td></tr></table>
I moje pytanie. Czy dałoby radę aby w formularzu pokazały się współrzędne obrazka? chodzi, że w jednym polu width a w drugim input height
Bardzo bym prosił o gotowe rozwiązanie. Z góry dziękuję Smile[/code]
Odpowiedz
#2
Ej skąd wy bierzecie takie skrypty?
Ten kod widział chyba narodziny dinozaurów.

Współrzędne już masz (funkcja movemouse), wystarczy je wrzucić do stosownych inputów metodą getElementById i wkorzystać value takich inputów.

Ps. Osobiście ten skrypt jest dla mnie nielogiczny. Szczególnie jak popatrzeć na klasę .dragme, która potem nie jest zmieniana.
Odpowiedz
#3
Ah mamy nowy rok, więc wyjątkowo pomogę ;]

Tworzysz sobie 2 inputy

Kod:
<input type="text" id="inp_x" value="" />
<input type="text" id="inp_y" value="" />

a potem przerabiasz "swoja" funkcję:

Kod:
function movemouse(e)
{
  if (isdrag)
  {
    var temp_x = nn6 ? tx + e.clientX - x : tx + event.clientX - x;
    var temp_y = nn6 ? ty + e.clientY - y : ty + event.clientY - y;
    dobj.style.left = temp_x
    dobj.style.top  = temp_y
    document.getElementById('inp_x').value = temp_x
    document.getElementById('inp_x').value = temp_y
    return false;
  }
}
Odpowiedz
#4
dzięki wielkie!
Odpowiedz


Skocz do:


Użytkownicy przeglądający ten wątek: 1 gości
Sponsorzy i przyjaciele
SeoHost.pl