2017-01-06 77 views
1

我正在使用以下行動態創建可編輯的div。內容在傳送帶內可導致事件傳播

<div class='reflection-field' contenteditable="true" data-number="${index}"></div> 

預期:當我點擊渲染的div時,我希望它在開始時顯示光標。

問題:此div位於Carousel的「Slide」div內。因此,當我點擊此內容的可編輯div時,它會傳播事件並將事件激活到激活「抓取幻燈片」事件的父級傳送帶。這導致可編輯內部的「移動」鼠標指針和NO光標。

我在這個項目中使用jQuery &貓頭鷹Carousel 2。

$(".reflection-field").click(function(event) { 
    event.stopPropagation(); 
}); 

$(".owl-carousel").on("click",".reflection-field", function(event) { 
    event.stopPropagation(); 
    propStopped(event) 
}); 

function propStopped(event) { 
if (event.isPropagationStopped()) { 
    console.log("called"); 
} else { 
console.log("not called"); 
} 
} 
//called 

但是,它沒有發生。真的很感激幫助。

的jsfiddle:https://jsfiddle.net/pr2wn6ug/

回答

0

好,這裏是交易。

「mousedown」喚起了貓頭鷹傳送帶2的抓取。

因此,這使工作

$(".reflection-field").on("click tap mousedown", function(event) { 
    event.stopPropagation(); 
});