Поведение мыши на веб-странице - я не хочу, чтобы текст отмечался - PullRequest
0 голосов
/ 25 февраля 2011

Я работаю над веб-приложением Kalendar (многопользовательское). Приложение почти готово, но одна вещь не так хороша. Я хочу дать Пользователю возможность отмечать несколько раз одновременно. Вот почему я создал функцию mousedown для каждого поля, а также функцию mouseup. Таким образом, я получаю первое помеченное поле и последнее. Все поля в середине можно рассчитать по идентификатору! Теперь проблема: пока я двигаю мышь, браузер маркирует текст. Я хочу другое поведение мыши. Я хочу, чтобы мышь нарисовала прямоугольник, чтобы пользователь видел, где он начал, и чтобы текст в документе не отмечался! Это очень важно. Знаете ли вы, как решить проблему? Я уже деактивировал Меню правого клика, установил свое собственное меню, но мне сложно :(. Я уже искал в Интернете с помощью Google, но на самом деле я не знаю, какие ключевые слова могут помочь здесь.

PS: я использую jQuery, возможно, это могло бы помочь в этой ситуации.

Ответы [ 2 ]

4 голосов
/ 25 февраля 2011

Вот скрипт для отключения выделения текста:

http://www.dynamicdrive.com/dynamicindex9/noselect.htm

Если у вас есть jQuery, вы можете использовать связывание как:

$('#demo').bind('selectstart',function(e) {
    e.preventDefault();
});

Вот JSFiddle:

http://jsfiddle.net/Nk9ec/2/

0 голосов
/ 25 февраля 2011

ОК, я узнал, что случилось. Ваш код предназначен только для IE. Я использую Firefox и оптимизирую свое приложение для Firefox! Ну, теперь мне удалось отключить выделение текста с помощью этой функции:

$(document).ready(function() {
    $(document)[0].oncontextmenu = function() {return false;} 
    $('#id').mousedown(function(event) {
        checkClk(event);
        return false; 
    });
});

Функция checkClk (событие) контролирует поведение кликов. Рядом мне удалось сделать мышку-указатель стандартным-указатель с помощью css:

body {
    cursor: default;
}

Все, что мне сейчас нужно, это выяснить, как я могу нарисовать прямоугольник, когда я двигаю мышку, удерживая нажатой левую кнопку. Я хочу, чтобы приложение выглядело как операционная система. Если щелкнуть и удерживать мышь нажатой, появится прямоугольник (например: http://img21.imageshack.us/i/markiert.png/). Кто-нибудь знает, возможно ли это без деления, размер которого зависит от положения мыши?

...