2015-05-07 73 views
-2

我希望能夠點擊屏幕上的任何位置,並顯示一個div(稱爲#note)。我能夠創建儘可能多的#注,但我不想點擊#note並且出現另一個div。控制如何在jQuery中創建div

這裏是jQuery的:

$('#wrp').click(function() { 
    var note = $('#note').first(); 
    note.clone().insertBefore(note); 
    console.log(note); 
}); 

在此先感謝您的幫助!

+0

那將造成很多的div ID'#note',這無效的HTML。另外,什麼是'#wrp' –

+0

對不起,如果我沒有解釋得很好! –

+0

我知道,我最初有#note作爲.note,但我將它改爲#note,看看能否解決我的問題 –

回答

0

您可以使用事件目標檢查點擊的目標。然後使用closest(),看它是否是一個音符元素本身,還是它的一個是被點擊的後代

$(document).click(function (event) { 
    // only proceed if clcik is not anywhere in a note element 
    if (!$(event.target).closest('.note').length) {  
     var note = $('.note').first(); 
     note.clone().insertBefore(note); 
     console.log(note); 
    } 
}); 

使用class="note"避免重複ID的

+0

這些都沒有工作:( –

+0

工作正常在這裏http://jsfiddle.net/9ceq91cs/ – charlietfl