Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   к body добавить onselectstart="return false" (https://javascript.ru/forum/misc/42259-k-body-dobavit-onselectstart%3D-return-false.html)

izcian 19.10.2013 13:42

к body добавить onselectstart="return false"
 
Подскажите пожалуйста, как при onclick, добавить к тегу <body> onselectstart="return false" , чтобы при перетаскивании разных окошек текст не выделялся?

danik.js 19.10.2013 14:46

blabla.onclick = function() {
    document.body.onselectstart = function() { return false };
};


Только событие клик - это когда кнопку мыши уже отпустили. Тебе наверно mousedown событие нужно. И в добавок временно навешивать обработчик на mouseup по которому удалять этот же обработчик и удалять обработчик selectstart.

Событие selectstart есть далеко не во всех браузерах. Кроме того в хроме при перетаскивании будет некрасивый курсор выделения текста.
Обычно запрет выделения делается иначе: просто отменяется действие по умолчанию для mousedown.

izcian 20.10.2013 00:03

Цитата:

Сообщение от danik.js (Сообщение 277202)
blabla.onclick = function() {
    document.body.onselectstart = function() { return false };
};


Только событие клик - это когда кнопку мыши уже отпустили. Тебе наверно mousedown событие нужно. И в добавок временно навешивать обработчик на mouseup по которому удалять этот же обработчик и удалять обработчик selectstart.

Событие selectstart есть далеко не во всех браузерах. Кроме того в хроме при перетаскивании будет некрасивый курсор выделения текста.
Обычно запрет выделения делается иначе: просто отменяется действие по умолчанию для mousedown.

Спасибо за ответ, но все же mousedown и mouseup не пойдут
Т.е нужно при вызове некоей функции онкликом, в ней проделать так
Т.е. чтобы document.body.onselectstart =
и получить в итоге <body onselectstart="return false">

Как-то по аналогии, типа этого
document.getElementById('id').style.display = 'block';

BETEPAH 20.10.2013 10:42

Цитата:

Сообщение от izcian
Т.е нужно при вызове некоей функции онкликом, в ней проделать так
Т.е. чтобы document.body.onselectstart =
и получить в итоге <body onselectstart="return false">

Код во втором комментарии делает именно то, что здесь написано.
blabla - это document.getElementById('id')

izcian 31.10.2013 10:08

Цитата:

Сообщение от BETEPAH (Сообщение 277281)
Код во втором комментарии делает именно то, что здесь написано.
blabla - это document.getElementById('id')

Ничего не понимаю...

<img src="/images/8.jpg" onclick="get_Img(2)">
function get_Img(g) {

   
   if (g == 2) {
        document.body.onselectstart =  // присваиваем тегу body onselectstart="return false"
 document.body. onmousedown //Добавить  onmousedown="return false" 
}
   
   if (g == 3) {
       //Отменить присваивание тегу body onselectstart
      // Отменить присваивание тегу body onmousedown="return false" 
   }


}


Пытался
if (g == 2) {
    document.body.onselectstart = function(){"return false"};
    document.body.onmousedown = function(){"return false"};
}

Не работает...

Блин заработала)))
document.body.onselectstart = function(){return false};
BETEPAH и danik.js большое спасибо!

BETEPAH 31.10.2013 10:52

Цитата:

Сообщение от izcian
function(){"return false"};

Можете обосновать кавычки в функции?

izcian 31.10.2013 10:59

Цитата:

Сообщение от BETEPAH (Сообщение 278884)
Можете обосновать кавычки в функции?

BETEPAH, по невнимательности))) Спасибо за помощь!


Часовой пояс GMT +3, время: 10:14.