Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 20.05.2008
Сообщений: 20

Как изменять последовательность блоков DIV мышью или кнопками управления

04.03.2012, 20:07. Показов 1692. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
На странице есть несколько блоков div расположенных последовательно. Необходимо написать код, чтобы можно было с помощью кнопок управления или мыши изменять последовательность блоков. Использовать DOM.
Нашел приблизительный код, но он не работает, а сам разобраться не могу.
ПС: просьба сильно не ругать, тк сам новичек. Лучше объясните. )

ППС: Если есть другой код, приму с удовольствием.

Заранее спасибо.

Нашел такой код:

HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Документ без названия</title>
</head>
<body >
 
 
<!--<script>
$(document).ready(function() 
{
    var dragObjects = document.getElementById('dragObjects1').getElementsByTagName('img')
    for(var i=0; i<dragObjects.length; i++) {
        dragMaster1.makeDraggable(dragObjects[i])
    }
})
 
</script>-->
 
<script>
var dragMaster = (function() {
        var dragObject
        var mouseOffset
     
        // получить сдвиг target относительно курсора мыши
        function getMouseOffset(target, e) {
            var docPos  = getPosition(target)
            return {x:e.pageX - docPos.x, y:e.pageY - docPos.y}
        }
     
        function mouseUp(){
            dragObject = null
     
            // очистить обработчики, т.к перенос закончен
            document.onmousemove = null
            document.onmouseup = null
            document.ondragstart = null
            document.body.onselectstart = null
        }
     
        function mouseMove(e){
            e = fixEvent(e)
     
            with(dragObject.style) {
                position = 'absolute'
                top = e.pageY - mouseOffset.y + 'px'
                left = e.pageX - mouseOffset.x + 'px'
            }
            return false
        }
     
        function mouseDown(e) {
            e = fixEvent(e)
            if (e.which!=1) return
     
            dragObject  = this
     
            // получить сдвиг элемента относительно курсора мыши
            mouseOffset = getMouseOffset(this, e)
     
            // эти обработчики отслеживают процесс и окончание переноса
            document.onmousemove = mouseMove
            document.onmouseup = mouseUp
     
            // отменить перенос и выделение текста при клике на тексте
            document.ondragstart = function() { return false }
            document.body.onselectstart = function() { return false }
     
            return false
        }
     
        return {
            makeDraggable: function(element){
                element.onmousedown = mouseDown
            }
        }
     
    }())
     
    function getPosition(e){
        var left = 0
        var top  = 0
     
        while (e.offsetParent){
            left += e.offsetLeft
            top  += e.offsetTop
            e    = e.offsetParent
        }
     
        left += e.offsetLeft
        top  += e.offsetTop
     
        return {x:left, y:top}
    }
 
</script>
<h3 id="demo" >Перемещаем мышью рисунки</a></h3>
<p><fieldset><br />
<legend>Перенеси меня</legend></p>
<div id="dragObjects1"><img src="1.gif" /></div>
<div id="dragObjects1"><img src="2.gif"/></div>
<div id="dragObjects1"><img src="3.gif"/></div>
<div id="dragObjects1"><img src="4.gif"/></div>
<p></fieldset></p>
</body>
</html>
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.03.2012, 20:07
Ответы с готовыми решениями:

Как реализовать смещение div блоков под другой div?
Всем привет! Помогите сместить блоки под другой блок! &lt;div class=&quot;container&quot;&gt;&lt;div class=&quot;left-div left-text&quot;&gt;Drive business...

Как изменять позицию элемента при перетягивании его мышью
Необходимо написать процедуру обработки события, реализующую действия: элемент изменяет позицию при перетягивании его мышью, элемент...

Как изменять цвет рамки и div-а?
Всем привет. Сделал себе маленькую портфолио-страничку. Тут вспомнил какой же я ленивый и подумал перенести сайт на cms. С cms-ами раньше...

3
O tempora, o mores!
 Аватар для conformist
238 / 172 / 13
Регистрация: 15.01.2012
Сообщений: 681
06.03.2012, 21:39
а вот почему Вы все, с такими вопросами, упорно проходите мимо раздела javascript? вам сюда
0
0 / 0 / 0
Регистрация: 20.05.2008
Сообщений: 20
07.03.2012, 09:07  [ТС]
сорри, модераторы, перенесите, пожалуйста, в нужную ветку
спасибо

ps вот ссылочка на пример с перемещением объектов на странице. http://javascript.ru/ui/dragan... e-elementa
может кто-нибудь мог бы помочь переделать и подогнать к условию?
0
0 / 0 / 0
Регистрация: 20.05.2008
Сообщений: 20
20.03.2012, 01:18  [ТС]
up
помогите, плиз
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
20.03.2012, 01:18
Помогаю со студенческими работами здесь

Размещение нескольких блоков div внутри другого блока div
Хочу сделать шапку веб-страницы. Прикреплю ниже небольшую схему того, как она будет выглядеть. Хочу текст разместить в левой части шапки с...

Как убрать смещение у последующих блоков DIV?
кто может помочь, зайдите на сайт ktc.kaluga.ru. раздел &quot;Студенческая жизнь&quot;, далее пункт &quot;Студенческое научное общество&quot;...ниже...

Как сделать border-collapse для div блоков?
Здравствуйте. Имею такую простую конструкци. &lt;div class=&quot;right&quot;&gt;&lt;/div&gt;&lt;div class=&quot;left&quot;&gt;&lt;/div&gt; .left { border-left:1px solid...

Перетаскивание блоков мышью
Здравствуйте, не знаете, как сделать перелистывание как в гугле или вк? Ну когда мышкой можно таскать блоки только в рамках div? я знаю про...

Как определить <div> … </div> пустой или с дополнительными элементами?
Используется: WebDriver, С# ИМЕЕТСЯ Имеется страница с &lt;div&gt; … &lt;/div&gt;. Содержание &lt;div&gt; … &lt;/div&gt; после каждого...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru