이 코드의 전반부는 완벽하게 작동합니다. 그러나 두 번째. 클릭하면 항목이 제거되는 위치에서 실행되지 않습니다. .click() 함수의 코드 만이 먼저 평가되는 시간 (onReady)의 적절한 요소에 결합 때문에 일어나고jquery. 발언하지 않는 앞에 붙인 아이템에 대한 클릭().
$(document).ready(function()
{
$('#contact').click(function()
{
$('#contact_box').remove();
$('.menu_item_content').prepend('<div class="menu_box" id="contact_box">Contact INFO goes in this box.</div>');
});
$('#about').click(function()
{
$('#about_box').remove();
$('.menu_item_content').prepend('<div class="menu_box" id="about_box">About info goes in this box.</div>');
});
$('#twitter').click(function()
{
$('#twitter_box').remove();
$('.menu_item_content').prepend('<div class="menu_box" id="twitter_box">Twitter</div>');
});
//
//remove single items
//
//nothing below this fires for some reason?
$('#contact_box').click(function()
{
$('#contact_box').remove();
});
$('#about_box').click(function()
{
$('#about_box').remove();
});
$('#twitter_box').click(function()
{
$('#twitter_box').remove();
});
});
<style>
.menu_item
{
display:inline;
font-family:Tahoma;
font-size:20px;
}
.menu_spacer
{
display:inline;
font-family:Tahoma;
font-size:45px;
}
</style>
<div class="menu">
<div class="menu_items">
<div class="menu_item" id="contact">CONTACT</div>
<div class="menu_spacer">/</div>
<div class="menu_item" id="about">ABOUT</div>
<div class="menu_spacer">/</div>
<div class="menu_item" id="twitter">TWITTER</div>
</div>
<div class="menu_item_content">
</div>
</div>
당신이 HTML을 게시 할 수주십시오? – airmanx86
확실히 그것을 – ian
에 추가했습니다. 약간의 작은 틱이지만, 대신'$ (this) .remove()'를 사용합니다. jQuery는 두 번째 요소에 대해 DOM을 검색 할 필요가 없다. – mpen