我創建了一個基本的行點擊和拖動選擇功能。然而,這個問題是在列上點擊並拖動來打開和關閉它們。我正在尋找某種類型的return false
或stopPropagation
某種但我無法讓這些工作。防止內部div觸發外部事件
return false
確實有助於防止文本選擇,但它並不妨礙列選擇影響行選擇。
爲了演示,http://jsfiddle.net/sjwcztre/,嘗試從右側選擇行 - 沒有問題。但儘量選擇在那裏列文本是存在的行 - 它會靠不住
var isMouseDown = false;
$('.row').each(function() {
$(this).mousedown(function() {
isMouseDown = true;
rowClickHandler(this);
console.log('mdown');
return false;
})
.mouseover(function() {
if (isMouseDown) rowClickHandler(this);
});
$(document).mouseup(function() {
isMouseDown = false;
});
});
function rowClickHandler(obj) {
$(obj).toggleClass('highlight');
}
像http://jsfiddle.net/j08691/sjwcztre/3/? – j08691