Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: проблема с драг-дропом....
 
 автор: GladiatoR   (12.04.2006 в 18:08)   письмо автору
 
 

как сделать чтобы картинка передвигалась на 100 пикселей,если мышка передвигаеться на 100 пикселей(не на 1 а на фиксированное число пикселей)....вот код каторый передвигает картинку на 100 пикселей,но при передвижении мышки на 1 пиксель:

<script language="JavaScript1.2">
<!--
var dragapproved=false
var z,x,y, temp1, temp2
function move(){
if (event.button==1&&dragapproved){
        z.style.pixelLeft=(temp1+event.clientX - x)*100
        z.style.pixelTop=(temp2+event.clientY - y)*90
        z.style.cursor="move"
return false
}    
}
function drags(){
if (!document.all)
       return
    
    dragapproved=true
    z=event.srcElement
    //z.style.zIndex=-1
    temp1=z.style.pixelLeft
    temp2=z.style.pixelTop
    x=event.clientX
    y=event.clientY
    document.onmousemove=move

}

function dragstop()
{
     z.style.cursor=""
     dragapproved=false
     new_x = z.style.pixelLeft
     new_y = z.style.pixelTop
     diff_x = new_x-temp1
     diff_y = new_y-temp2
     //z.style.zIndex=""
     z.style.pixelLeft=temp1
     z.style.pixelTop=temp2
     xajax_make_action('', 'grab_'+diff_x+'_'+diff_y);
}
document.onmousedown=drags
document.onmouseup=dragstop
//-->
</script>


   
 
 автор: 12345   (12.04.2006 в 18:21)   письмо автору
 
   для: GladiatoR   (12.04.2006 в 18:08)
 

Дали бы работающий пример, а то что, писать самому, какая картинка?

Надо, чтобы передвигалось прыжками?

Заменяете передвижение на изменение своего нового параметра при рисунке, а из него вычисляете pixelLeft, pixelTop (это в FF работает?) через Math.floor(xx/100)*100 .

----
Дополнение:
В этой реализации не нужно даже запоминать нового параметра, правда, привязка к сетке относительно окна, а не координат документа. (сделано на базе кода http://example.javascript.aho.ru/JsPrimeryCode-56.htm )

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования