У меня есть отделение на странице HTML и каждый раз, когда я щелкаю мышью и перемещаю ее, она покажет, что "не может отбросить" курсор как он, выбирает что-то. Существует ли способ отключить выбор? Я попробовал пользовательский выбор CSS с помощью ни одного без успеха.
Собственные варианты user-select
будут работать в большинстве современных браузеров:
*.unselectable {
-moz-user-select: -moz-none;
-khtml-user-select: none;
-webkit-user-select: none;
/*
Introduced in IE 10.
See http://ie.microsoft.com/testdrive/HTML5/msUserSelect/
*/
-ms-user-select: none;
user-select: none;
}
Для IE <10 и Opera вам нужно будет использовать атрибут unselectable
элемента вы хотите, чтобы вас не выбирали. Вы можете установить это с помощью атрибута в HTML:
<div id="foo" unselectable="on" class="unselectable">...</div>
К сожалению, это свойство не унаследовано, то есть вы должны поместить атрибут в начальный тег каждого элемента внутри
function makeUnselectable(node) {
if (node.nodeType == 1) {
node.setAttribute("unselectable", "on");
}
var child = node.firstChild;
while (child) {
makeUnselectable(child);
child = child.nextSibling;
}
}
makeUnselectable(document.getElementById("foo"));
У вас есть какое-то прозрачное изображение, которое вы выбрали? Обычно при перетаскивании изображения появляется значок «не может упасть». В противном случае он обычно выделяет текст при перетаскивании. В таком случае вам, возможно, придется поместить изображение позади всего, используя z-index.
Я использую cancelBubble = true
и stopPropagation ()
в обработчиках перемещения мыши и перемещения.