苹果浏览器。拖动时光标错误
Safari. Wrong cursor when dragging
我正在尝试向我的项目添加拖放功能并为此使用 slip.js。
为了装饰光标,我向每个可拖动对象 <tr>
添加了 class="draggable"
。这个 class 的 CSS 是:
.draggable:active {
cursor: -webkit-grabbing;
cursor: -moz-grabbing;
cursor: grabbing;
}
拖放工作正常,但在 Safari 中,当我拖动 table 行时,光标看起来像 cursor: text
在Chrome光标就OK了
有趣的是,当我只是单击并按住而不拖动光标时,在 Safari 中也可以
如chrome sets cursor to text while dragging, why?中所述,我需要在拖动时禁用选择。我的 JavaScript 为此:
list = document.getElementById('demo1');
var flag_dragging = false;
list.addEventListener('mouseover', function(e){
document.onselectstart = function(){ return false; }
});
list.addEventListener('mouseout', function(e){
if(!flag_dragging){
document.onselectstart = function(){ return true; }
}
});
list.addEventListener('dragstart', function(e){
flag_dragging = true;
});
list.addEventListener('dragstop', function(e){
flag_dragging = false;
});
我正在尝试向我的项目添加拖放功能并为此使用 slip.js。
为了装饰光标,我向每个可拖动对象 <tr>
添加了 class="draggable"
。这个 class 的 CSS 是:
.draggable:active {
cursor: -webkit-grabbing;
cursor: -moz-grabbing;
cursor: grabbing;
}
拖放工作正常,但在 Safari 中,当我拖动 table 行时,光标看起来像 cursor: text
在Chrome光标就OK了
有趣的是,当我只是单击并按住而不拖动光标时,在 Safari 中也可以
如chrome sets cursor to text while dragging, why?中所述,我需要在拖动时禁用选择。我的 JavaScript 为此:
list = document.getElementById('demo1');
var flag_dragging = false;
list.addEventListener('mouseover', function(e){
document.onselectstart = function(){ return false; }
});
list.addEventListener('mouseout', function(e){
if(!flag_dragging){
document.onselectstart = function(){ return true; }
}
});
list.addEventListener('dragstart', function(e){
flag_dragging = true;
});
list.addEventListener('dragstop', function(e){
flag_dragging = false;
});