2013-03-12 7 views
0

После прочтения ответов на this question, я реализовал ту же функцию, где я проверяю event.preventDefault и либо запустил event.preventDefault(), либо . Это, похоже, решило проблему для пользователя в вопросе, но мой все еще выделяет текст. Он -, ударяющий по линии в IE 7/8. Он также хорошо работает в Firefox, Chrome, IE 9+.Перетаскивание по-прежнему Основные моменты Текст

Немного больше информации: Я использую холст raphael. У меня есть mousedown, mousemove и mouseup события для холста, все делают свое дело. Я выполнил проверку для event.preventDefault в функции обратного вызова mousedown.

+0

использовать CSS, что-то вроде http://stackoverflow.com/questions/826782/css-rule-to-disable -text-selection-highlighting – Chad

+0

css не будет работать, потому что я все еще хочу иметь возможность перетаскивать/рисовать внутри элемента canvas, но если пользователь рисует снаружи, я не хочу, чтобы он выделял текст – AdamDev

ответ

0

Если вы комфортно, используя JQuery, это будет решать это кросс-браузер:

$(function(){ 
    $.fn.disableSelection = function() { 
     return this 
      .attr('unselectable', 'on') 
      .css('user-select', 'none') 
      .on('selectstart', false); 
    }; 
})(); 
+0

К сожалению, мы не используем jQuery для этого приложения. – AdamDev