Форум программистов, компьютерный форум, киберфорум
HTML, CSS
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.95/185: Рейтинг темы: голосов - 185, средняя оценка - 4.95
88 / 85 / 7
Регистрация: 16.05.2010
Сообщений: 272
1

Запретить выделение текста

05.12.2010, 22:24. Просмотров 36965. Ответов 8
Метки нет (Все метки)

подскажите как запретить выделение текста в блоке div
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.12.2010, 22:24
Ответы с готовыми решениями:

Как запретить выделение текста курсором мыши
Как запретить выделение текста курсором мыши? Нужно, чтобы при наведении курсора на меню курсор...

Запретить выделение текста в Edit
Приветствую! помогите, как запретить выделение текста в Edit ? в интернете нашел пару методов, но...

Запретить выделение ячеек и текста в DataGrid
Как сделать так, чтобы при нажатии на любое место датагрида оно не выделялось? Ни ячейка, ни...

Как запретить выделение текста в textbox?
захожу на форму по таймеру, и в textbox получается выделен текст, как то некрасиво, как запретить...

8
16 / 16 / 1
Регистрация: 02.12.2010
Сообщений: 57
06.12.2010, 04:29 2
на jquery - примерно так
Javascript
1
2
3
4
5
6
7
$('div').attr('unselectable', 'on').select(function() {return false}).css({
  '-moz-user-select': '-moz-none',
  '-o-user-select': 'none',
  '-khtml-user-select': 'none',
  '-webkit-user-select': 'none',
  'user-select': 'none'
});
3
1 / 1 / 1
Регистрация: 07.11.2009
Сообщений: 4
19.06.2011, 08:23 3
Лучший ответ Сообщение было отмечено mik-a-el как решение

Решение

Спасибо, помогло, только:
  1. При чем здесь JQuery? Это просто CSS:
    CSS
    1
    2
    3
    4
    5
    
    -moz-user-select: -moz-none;
    -o-user-select: none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    user-select: none;
  2. Ошибочка, правильно -moz-none, а не -moz-nonep (а можно просто none).

Ещё ваш метод не совсем работает, IE9 его не поддерживает. Вот такой скриптик запрещает выделение везде (наверняка):

Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
function returnFalse(e){
  return false;
}
 
function cancelEvent(e){
  if(e.preventDefault)e.preventDefault();
  else e.returnValue=false;
}
 
function addHandler(e,event,action,param){
  if(document.addEventListener)e.addEventListener(event,action,param);
  else if(document.attachEvent)e.attachEvent('on'+event,action);
  else e['on'+event]=action;
}
 
function removeHandler(e,event,action,param){
  if(document.addEventListener)e.removeEventListener(event,action,param);
  else if(document.attachEvent)e.detachEvent('on'+event,action);
  else e['on'+event]=returnFalse;
}
 
addHandler(document,'mousedown',mouseDown,false);
addHandler(document,'mouseup',mouseUp,false);
 
function mouseDown(e){
  e=e||event;
  cancelEvent(e);
  addHandler(document,'selectstart',returnFalse,false);
}
 
function mouseUp(e){
  removeHandler(document,'selectstart',returnFalse,false);
}
При этом <body> надо оформить так:

HTML5
1
<body onmousedown="mouseDown(this)" onmouseup="mouseUp(this)">
1
60 / 17 / 0
Регистрация: 23.12.2010
Сообщений: 203
19.06.2011, 16:16 4
какой джейквери какой CSS... это прото на html делается. <div unselectable = "on"
0
1 / 1 / 1
Регистрация: 07.11.2009
Сообщений: 4
19.06.2011, 21:06 5
Цитата Сообщение от webarts Посмотреть сообщение
какой джейквери какой CSS... это прото на html делается. <div unselectable = "on"
Не вариант. Этот атрибут только IE поддерживает.
0
1999 / 1422 / 92
Регистрация: 25.11.2010
Сообщений: 3,611
20.06.2011, 15:48 6
Цитата Сообщение от }{oTT Посмотреть сообщение
Вот такой скриптик запрещает выделение везде (наверняка):
И даже при отключенном JavaScript? Смысл в том, чтобы не дать пользователю скопировать текст со страницы, как мне кажется.
0
55 / 55 / 8
Регистрация: 12.12.2010
Сообщений: 204
21.06.2011, 09:08 7
Цитата Сообщение от Skipy Посмотреть сообщение
И даже при отключенном JavaScript? Смысл в том, чтобы не дать пользователю скопировать текст со страницы, как мне кажется.
Ну так и стили можно отключить авторские
0
1 / 1 / 1
Регистрация: 07.11.2009
Сообщений: 4
21.06.2011, 23:18 8
Цитата Сообщение от Skipy Посмотреть сообщение
И даже при отключенном JavaScript? Смысл в том, чтобы не дать пользователю скопировать текст со страницы, как мне кажется.
Не, лично я так делал просто чтобы придать сайту некий эффект. Думаю, запрещать пользователю копировать текст вообще бессмысленно))) сработает только против какого-нибудь совсем нешарящего юзера))) В HTML ведь он всегда доступен. А в целях защиты от копирования ничего лучше, чем представить текст в виде PNG-картинки не вижу)

Кстати, на счет того скрипта, что выше, я хочу признать, он не такой уж и идеальный - скроллбар перестает работать, правда колесиком все равно норм прокручивается. Так что не буду я использовать этот скрипт.
0
14 / 9 / 0
Регистрация: 25.06.2011
Сообщений: 55
27.06.2011, 01:08 9
Вообще полбзователь может скопировать картинку и воспользоваться прогою, html тоже не вариант даже css в опере можно переделать код и обновить страницу.А смысла скрывать нету разве что под замком с семью ключами и цепи с котом
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.06.2011, 01:08

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Запретить выделение узла treeView
Собственно как реализовать сабж при перемещении между узлами treeView?

Как запретить выделение в ComboBox?
Здравствуйте! Подскажите, пожалуйста, как убрать/запретить выделение текста( может название...

Как запретить выделение обьектов?
Просто есть форма которая пародирует лаунчер одной игры. Но получается баг, что когда наживаешь на...

DataGridView — запретить выделение нескольких строк
Привет В DataGridView можно как-нибудь запретить одновременное выделение нескольких строк? Я...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.