Ну делается это на джаве скрипт
С помощью Java Script можно определять положение курсора мышки, если он слишком близко подошёл к данной кнопки, то изменяем координаты слоя, в котором находится данная кнопка, надо только следить, чтобы кнопка не вылетела за пределы окна