2013-03-12 19 views
0

在閱讀對this question的回覆後,我已執行相同的功能,其中我檢查了event.preventDefault並運行了event.preventDefault()或。這似乎解決了問題中的用戶問題,但我仍然突出顯示文本。它是在IE 7/8中擊中行。它也適用於Firefox,Chrome,IE 9+。拖動仍然亮點文本

更多信息:我正在使用raphael畫布。我爲畫布創建了mousedown,mousemove和mouseup事件,他們都在做他們自己的事情。我在mousedown回調函數中執行了event.preventDefault的檢查。

+0

使用CSS,像http://stackoverflow.com/questions/826782/css-rule-to-disable -text-selection-highlighting – Chad 2013-03-12 15:15:38

+0

css將無法正常工作,因爲我仍然希望能夠在畫布元素內部進行拖拽/繪製,但是如果用戶在外面繪製,我不想讓它突出顯示任何文字 – AdamDev 2013-03-12 17:12:16

回答

0

如果您使用jQuery很舒服,這將解決這個問題的跨瀏覽器:

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

不幸的是,我們沒有使用jQuery爲這個應用程序。 – AdamDev 2013-03-12 16:45:36