Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 14.09.2011, 00:14
Новичок на форуме
Отправить личное сообщение для h6wk1r Посмотреть профиль Найти все сообщения от h6wk1r
 
Регистрация: 14.09.2011
Сообщений: 4

Drag and drop - element.onmousedown
Сразу говорю, в js я новичок.
Из статьи про Drag and drop:
http://javascript.ru/ui/draganddrop
element.onmousedown = function(e){
    // запомнить переносимый объект 
    // в переменной dragObject
    dragObject  = this

    // остановить обработку события
    return false
}

не работает; если вместо element.onmousedown написать document.onmousedown то всё нормально. Вообще что такое element в данном коде? Ключевое слово или предполагается, что вместо element надо что-то подставить? И где про это можно прочитать?

Последний раз редактировалось h6wk1r, 14.09.2011 в 09:47.
Ответить с цитированием
  #2 (permalink)  
Старый 14.09.2011, 01:07
Аватар для Magneto
Люмус, Емаксос Developer!
Отправить личное сообщение для Magneto Посмотреть профиль Найти все сообщения от Magneto
 
Регистрация: 06.05.2010
Сообщений: 677

Предполагается что это тот елемент (картинка, блок и т.д.) над которым совершаются какие либо действия, в данном случае его собираются перетаскивать.

Последний раз редактировалось Magneto, 14.09.2011 в 01:09.
Ответить с цитированием
  #3 (permalink)  
Старый 14.09.2011, 01:21
Профессор
Отправить личное сообщение для Sweet Посмотреть профиль Найти все сообщения от Sweet
 
Регистрация: 16.03.2010
Сообщений: 1,618

element - это переменная
Ответить с цитированием
  #4 (permalink)  
Старый 14.09.2011, 09:36
Новичок на форуме
Отправить личное сообщение для h6wk1r Посмотреть профиль Найти все сообщения от h6wk1r
 
Регистрация: 14.09.2011
Сообщений: 4

Сообщение от Magneto Посмотреть сообщение
Предполагается что это тот елемент (картинка, блок и т.д.) над которым совершаются какие либо действия, в данном случае его собираются перетаскивать.
document.getElementById('b_2').onmousedown = function(e){
    // запомнить переносимый объект 
    // в переменной dragObject
    dragObject  = this

    // остановить обработку события
    return false
}

<img id="b_2" src="torrent.png">

Так тоже пытался, не работает.
----------------------------------------------------------
Сообщение от Sweet Посмотреть сообщение
element - это переменная
var dragObject     = null;
var element        = null;
element.onmousedown = function(e){
    // запомнить переносимый объект 
    // в переменной dragObject
    dragObject  = this

    // остановить обработку события
    return false
}

И так тоже не работает.

Где ещё можно прочитать про Drag and drop?

Последний раз редактировалось h6wk1r, 14.09.2011 в 10:00.
Ответить с цитированием
  #5 (permalink)  
Старый 14.09.2011, 11:24
Профессор
Отправить личное сообщение для Sweet Посмотреть профиль Найти все сообщения от Sweet
 
Регистрация: 16.03.2010
Сообщений: 1,618

var element        = null;
element.onmousedown...

Очевидно же, что работать не будет
Сообщение от h6wk1r
Где ещё можно прочитать про Drag and drop?
А зачем? Если нужно что-нибудь сделать, возьми jQuery: и инфы полно, и просто.
Ответить с цитированием
  #6 (permalink)  
Старый 14.09.2011, 12:52
Новичок на форуме
Отправить личное сообщение для h6wk1r Посмотреть профиль Найти все сообщения от h6wk1r
 
Регистрация: 14.09.2011
Сообщений: 4

Знчит element это указатель на картинку, блок и т.д.
var dragObject     = null;
var element        = document.getElementById('b_2');
element.onmousedown = function(e){
    // запомнить переносимый объект 
    // в переменной dragObject
    dragObject  = this

    // остановить обработку события
    return false
}

<img id="b_2" src="torrent.png">

Но код всёравно не работает.
В общем я так понял, что лучше использовать jQuery ...
Ответить с цитированием
  #7 (permalink)  
Старый 14.09.2011, 13:18
Аватар для Magneto
Люмус, Емаксос Developer!
Отправить личное сообщение для Magneto Посмотреть профиль Найти все сообщения от Magneto
 
Регистрация: 06.05.2010
Сообщений: 677

Все там работает. Если хочется разобраться в этом вопросе то продолжай читать мануалы, спрашивать на форуме, а так да JQuery.

<img id="b_2" src="http://javascript.ru/forum/images/ca_serenity/misc/logo.gif">

<script>
document.getElementById('b_2').onmousedown = function(e){
alert('сработало событие OnMouseDown')
}
</script>

Последний раз редактировалось Magneto, 14.09.2011 в 15:50.
Ответить с цитированием
  #8 (permalink)  
Старый 14.09.2011, 13:42
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Сообщение от h6wk1r Посмотреть сообщение
Знчит element это указатель на картинку, блок и т.д.
var dragObject     = null;
var element        = document.getElementById('b_2');
element.onmousedown = function(e){
    // запомнить переносимый объект 
    // в переменной dragObject
    dragObject  = this

    // остановить обработку события
    return false
}

<img id="b_2" src="torrent.png">

Но код всёравно не работает.
в файле demo.html есть снизу страницы такой код

var dragObjects = document.getElementById('dragObjects').getElementsByTagName('img')

for(var i=0; i<dragObjects.length; i++) {
	new DragObject(dragObjects[i])
}

new DropTarget(document.getElementById('trash'))

зачем вы полезли в исходный код?

ваш пример будет примерно так звучать на букавках

var element = document.getElementById("b_2")
new DragObject( element )


не убедил?

живой пример :

<style>
div { padding: 2px; border: 1px red solid; position: absolute; }
</style>


<div id="b_2">
     my el. lol 
</div>

<script src="http://javascript.ru/files/dnd/final/DragObject.js"></script>
<script src="http://javascript.ru/files/dnd/final/DropTarget.js"></script>
<script src="http://javascript.ru/files/dnd/final/dragMaster.js"></script>
<script src="http://javascript.ru/files/dnd/final/helpers.js"></script>
<script>
var element = document.getElementById("b_2")
new DragObject( element )
</script>

PS. то, что он возвращается на свою позицию, можно убрать. сейчас спешу, но вечером поправлю пост. удачи

Сообщение от Sweet Посмотреть сообщение
А зачем? Если нужно что-нибудь сделать, возьми jQuery: и инфы полно, и просто.
плохой, очень плохой совет.

зачем тогда программировать на JS, если можно индуса в рабство взять? он будет писать код, код будет работать, но расширяемость кода и его качество останется в параше.
Ответить с цитированием
  #9 (permalink)  
Старый 14.09.2011, 14:24
Профессор
Отправить личное сообщение для Sweet Посмотреть профиль Найти все сообщения от Sweet
 
Регистрация: 16.03.2010
Сообщений: 1,618

Сообщение от melky
плохой, очень плохой совет.
Нормальный. Просто есть два варианта: 1. Человек хочет изучить программирование на клиенте (в браузере). Тогда, конечно, нужно сначала изучить js. Затем можно посмотреть библиотеки. На это нужно относительно много времени (месяцы). 2. Человеку нужно как можно быстрее решить задачу. С jQuery это возможно. Мне показалось, тут второй вариант.
Ответить с цитированием
  #10 (permalink)  
Старый 14.09.2011, 16:14
Новичок на форуме
Отправить личное сообщение для h6wk1r Посмотреть профиль Найти все сообщения от h6wk1r
 
Регистрация: 14.09.2011
Сообщений: 4

На самом деле я никуда не тороплюсь. Думаю лучше знать и библиотеку jquery, и в тоже время, как можно без неё обойтись.

Последний раз редактировалось h6wk1r, 14.09.2011 в 16:29.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Drag & Drop Jquery irixxxxx jQuery 2 01.08.2011 16:58
Drag & Drop с несколькими элементами Katz Общие вопросы Javascript 1 29.07.2011 13:01
drag and drop многоуровневых ul, ol vvsh Элементы интерфейса 2 26.04.2011 21:05
Drag & Drop проблемка( htaccess Оффтопик 2 23.06.2010 07:45
Drag & Drop в полном объеме dizews Events/DOM/Window 3 26.07.2007 12:43