Сокрытие курсора мыши, когда неактивное использование JavaScript

Вы также можете запустить powershell в linux, я решил проблему, но кое-что я не знал ... В машине linux переменные конвейера преобразуют строку в верхний регистр, поэтому я просто изменил на $ env: BUILD.BUILDNUMBER работы

9
задан 木川 炎星 19 December 2010 в 12:36
поделиться

3 ответа

В CSS 2 none не является допустимым значением для свойства курсора . Однако он действителен в CSS 3.

В противном случае вы могли бы использовать настраиваемый курсор, загруженный из URI, который просто прозрачен.

Я считаю, что это сильно отвлекает пользователя, поэтому я бы не советовал вам это делать.

14
ответ дан 4 December 2019 в 09:11
поделиться

Если кто-либо все еще поиск ответа в 2019 (также, как и I), этот подход работает над FF 71 и Chrome 78:

var DEMO = {
  INI: {
    MOUSE_IDLE: 3000
  },
  hideMouse: function() {
    $("#game").css('cursor', 'none');
    $("#game").on("mousemove", DEMO.waitThenHideMouse);
  },
  waitThenHideMouse: function() {
    $("#game").css('cursor', 'default');
    $("#game").off("mousemove", DEMO.waitThenHideMouse);
    setTimeout(DEMO.hideMouse, DEMO.INI.MOUSE_IDLE);
  },
  showMouse: function() {
    $("#game").off("mousemove", DEMO.waitThenHideMouse);
    $("#game").css('cursor', 'default');
  },
};
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

Это просто и ясно. Эта версия использование DEMO.hideMouse(), чтобы начать скрывать мышь и DEMO.showMouse() для отмены события. Изменение #game отделению по Вашему выбору...

Это более ясно работать с on и off переключатель и названные функции вместо лямбд.

я знаю, что OP не определил, что ответы с помощью JQuery ожидаются, но по моему опыту: Я всегда рад видеть разные подходы для приобретения знаний из.

0
ответ дан 4 December 2019 в 09:11
поделиться

Я нашел простое обходное решение к неустойчивой проблеме без курсоров, должен создать прозрачное <div id="overlay"> </div> как последний элемент на странице и установить свойства стиля CSS на:

#overlay{
position: absolute;
left: 0;
top: 0;
height: 100%;
width: 100%;
background-color: transparent;
cursor: none;
margin: 0;
padding: 0;
border: 0;
}

Делают изменение JavaScript видимостью или в "видимый" или в "скрытый". "Видимый" слой скроет курсор. Наоборот со скрытым слоем.

0
ответ дан 4 December 2019 в 09:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: