content.style.top = contentY + "px"; // Новое смещение.
}
}
// He позволять всплывать этому событию. Предотвратить выполнение действий
// по умолчанию. Это позволит предотвратить прокрутку содержимого документа
// в окне броузера. Будем надеяться, что вызов preventDefault для события wheel
// также предотвратит возбуждение дублирующего события mousewheel.
if (е.preventDefault) е.preventDefault;
if (е.stopPropagation) е.stopPropagation;
e.cancelBubble = true; // модель событий IE
e.returnValue = false; // модель событий IE
return false;
}
}
17.7. События механизма буксировки (drag-and-drop)
В примере 17.2 было показано, как реализовать операцию буксировки элементов мышью. Она позволяет перетаскивать и оставлять элементы в пределах веб-страницы, но истинная буксировка - это нечто иное. Буксировка (drag-and-drop, или DnD)- это интерфейс взаимодействия с пользователем, позволяющий перемещать данные между «источником» и «приемником», которые могут находиться в одном или в разных приложениях. Буксировка (DnD) - это сложный механизм организации взаимодействий между человеком и машиной, и прикладные интерфейсы, реализующие поддержку буксировки, всегда отличались высокой сложностью:
• Они должны взаимодействовать с операционной системой, чтобы обеспечить возможность взаимодействий между различными приложениями.
• Они должны поддерживать такие операции передачи данных, как «перемещение», «копирование» и «создание ссылки», позволять источникам и приемникам ограничивать множество допустимых операций, а также давать пользователям возможность выбирать (обычно с помощью клавиш-модификаторов) операцию из разрешенного набора.
• Они должны предоставлять источнику способ определять ярлык или изображение, которое будет отображаться в процессе буксировки.