Изменение значка мыши через javascript

Я разрабатываю приложение для рисования в javasript, используя объект Canvas. Я хочу изменить свой собственный курсор мыши, когда указатель мыши попадает внутрь объекта Canvas. Как загрузить свою иконку?


person Soft    schedule 14.02.2010    source источник


Ответы (4)


Это можно сделать в CSS.

canvas {
    cursor: url(cursor.cur), url(cursor.gif), auto;
}

IE, Firefox, Safari и Chrome будут использовать файл .cur. GIF (или используйте PNG) предназначен для браузеров, которые не поддерживают файл .cur (не уверен, что такие есть). Opera не поддерживает пользовательские курсоры.

Размер изображения должен быть 32x32 пикселя или меньше. Это ограничение ОС (Windows); не ограничение браузера.

Справочник — таблицы совместимости Quirksmode CSS http://www.quirksmode.org/css/cursor.html< /а>

person Lachlan Roche    schedule 14.02.2010

У вас есть файл .cur для вашего собственного пользовательского курсора?

Вы можете иметь внутри вашего объекта Canvas атрибут style, который сообщает, как должен отображаться курсор. Это можно сделать с помощью настраиваемого курсора CSS.

style="cursor: url(mycursor.cur);"
  1. IE ожидает файл .cur.
  2. Firefox требует второго значения, отличного от URL; как курсор: URL (pix/cursor_ppk.gif), авто.
  3. Размер изображения должен быть 32x32 пикселя или меньше. Это ограничение ОС (Windows); не ограничение браузера.

Взято из CSS2 — стили курсора, совместимо в IE5.5+, FF, Safari и Chrome. Opera и Konqueror 3.5.7 несовместимы.

person Anthony Forloney    schedule 14.02.2010
comment
Это поддерживается во всех браузерах? Я думал, что это специфично для IE. - person Fermin; 14.02.2010

Есть способ: http://beradrian.wordpress.com/2008/01/08/cross-browser-custom-css-cursors/ Доза не работает с Opera, но подходит для IE, FF, Safari, Chrome.

person Sam Dark    schedule 14.02.2010

Я разместил обходной путь для Opera с использованием js здесь: Opera и пользовательский курсор в CSS< /а>

person tibalt    schedule 05.05.2011