Javascript 单击Jquery删除附加文本

Javascript 单击Jquery删除附加文本,javascript,jquery,html,css,append,Javascript,Jquery,Html,Css,Append,我正试图找到最简单、更简洁的方法来追加和删除追加的span、div或text。这是代码。有什么不对劲吗 /* HTML CODE */ <div id="appendHere" style="padding:10px;border:solid 1px red"></div> /* Jquery CODE */ $('#appendHere').live('click' , function() { $('#appendHere').append('<spa

我正试图找到最简单、更简洁的方法来追加和删除追加的span、div或text。这是代码。有什么不对劲吗

/* HTML CODE */
<div id="appendHere" style="padding:10px;border:solid 1px red"></div>

/* Jquery CODE */
$('#appendHere').live('click' , function() {
    $('#appendHere').append('<span style="padding:10px;border:solid 1px green;">Simple text</span>');
});

$('#appendHere span').live('click' , function() {
    $(this).remove();
});
/*HTML代码*/
/*Jquery代码*/
$('#appendHere').live('click',function()){
$(“#appendHere”).append('Simple text');
});
$('#appendHere span').live('click',function(){
$(this.remove();
});

你可以尝试使用

例如:

$('#appendHere').on('click' , function(e) {
 $('#appendHere span').toggle();
});

你可以尝试使用

例如:

$('#appendHere').on('click' , function(e) {
 $('#appendHere span').toggle();
});

你可以尝试使用

例如:

$('#appendHere').on('click' , function(e) {
 $('#appendHere span').toggle();
});

你可以尝试使用

例如:

$('#appendHere').on('click' , function(e) {
 $('#appendHere span').toggle();
});

取决于您使用的jQuery版本。使用
.live()
可能是您的第一个问题。请改为尝试
.on()
示例:

$(document).on('click','#appendHere span',function(){$(this.remove();})

你也可以试试类似的东西

<style>
#addHere{padding:10px;border:solid 1px red;}
#addHere span{padding:10px;border:solid 1px green;}
</style>

<div id="appendHere" data-has_span="false"></div>
$(document).on('click', '#appendHere', function()
{
    $elem = $(this);
    if($elem.data('has_span') == "false")
    {
        $elem.prop('data-has_span', 'true').append('<span>Text here</span>');
    }
    else
    {
        $elem.prop('data-has_span', 'false').find('span').remove();
    }
});

#addHere{填充:10px;边框:实心1px红色;}
#addHere span{填充:10px;边框:实心1px绿色;}
$(文档).on('click','#appendHere',function()
{
$elem=$(本);
如果($elem.data('has_span')==“false”)
{
$elem.prop('data-has_span','true')。append('Text here');
}
其他的
{
$elem.prop('data-has_span','false')。find('span')。remove();
}
});

取决于您使用的jQuery版本。使用
.live()
可能是您的第一个问题。请改为尝试
.on()
示例:

$(document).on('click','#appendHere span',function(){$(this.remove();})

你也可以试试类似的东西

<style>
#addHere{padding:10px;border:solid 1px red;}
#addHere span{padding:10px;border:solid 1px green;}
</style>

<div id="appendHere" data-has_span="false"></div>
$(document).on('click', '#appendHere', function()
{
    $elem = $(this);
    if($elem.data('has_span') == "false")
    {
        $elem.prop('data-has_span', 'true').append('<span>Text here</span>');
    }
    else
    {
        $elem.prop('data-has_span', 'false').find('span').remove();
    }
});

#addHere{填充:10px;边框:实心1px红色;}
#addHere span{填充:10px;边框:实心1px绿色;}
$(文档).on('click','#appendHere',function()
{
$elem=$(本);
如果($elem.data('has_span')==“false”)
{
$elem.prop('data-has_span','true')。append('Text here');
}
其他的
{
$elem.prop('data-has_span','false')。find('span')。remove();
}
});

取决于您使用的jQuery版本。使用
.live()
可能是您的第一个问题。请改为尝试
.on()
示例:

$(document).on('click','#appendHere span',function(){$(this.remove();})

你也可以试试类似的东西

<style>
#addHere{padding:10px;border:solid 1px red;}
#addHere span{padding:10px;border:solid 1px green;}
</style>

<div id="appendHere" data-has_span="false"></div>
$(document).on('click', '#appendHere', function()
{
    $elem = $(this);
    if($elem.data('has_span') == "false")
    {
        $elem.prop('data-has_span', 'true').append('<span>Text here</span>');
    }
    else
    {
        $elem.prop('data-has_span', 'false').find('span').remove();
    }
});

#addHere{填充:10px;边框:实心1px红色;}
#addHere span{填充:10px;边框:实心1px绿色;}
$(文档).on('click','#appendHere',function()
{
$elem=$(本);
如果($elem.data('has_span')==“false”)
{
$elem.prop('data-has_span','true')。append('Text here');
}
其他的
{
$elem.prop('data-has_span','false')。find('span')。remove();
}
});

取决于您使用的jQuery版本。使用
.live()
可能是您的第一个问题。请改为尝试
.on()
示例:

$(document).on('click','#appendHere span',function(){$(this.remove();})

你也可以试试类似的东西

<style>
#addHere{padding:10px;border:solid 1px red;}
#addHere span{padding:10px;border:solid 1px green;}
</style>

<div id="appendHere" data-has_span="false"></div>
$(document).on('click', '#appendHere', function()
{
    $elem = $(this);
    if($elem.data('has_span') == "false")
    {
        $elem.prop('data-has_span', 'true').append('<span>Text here</span>');
    }
    else
    {
        $elem.prop('data-has_span', 'false').find('span').remove();
    }
});

#addHere{填充:10px;边框:实心1px红色;}
#addHere span{填充:10px;边框:实心1px绿色;}
$(文档).on('click','#appendHere',function()
{
$elem=$(本);
如果($elem.data('has_span')==“false”)
{
$elem.prop('data-has_span','true')。append('Text here');
}
其他的
{
$elem.prop('data-has_span','false')。find('span')。remove();
}
});

您最好不要使用
live
,而是尝试
.bind()
.on()

问题是当您单击
span
时,会单击
div
,然后单击
time

所以你可以试着这样做:

$("appendHere").on("click", function(e) {
    if(!$(this).is($(e.target))) {
        return false;
    }
    $("<span>Text here</span>").appendTo($(this)).on("click", function() {
         $(this).remove();
    });
});
$(“appendHere”)。在(“单击”)上,函数(e){
如果(!$(this).is($(e.target))){
返回false;
}
$(“此处文本”).appendTo($(this)).on(“单击”,函数(){
$(this.remove();
});
});

您最好不要使用
live
,而是尝试
.bind()
.on()

问题是当您单击
span
时,会单击
div
,然后单击
time

所以你可以试着这样做:

$("appendHere").on("click", function(e) {
    if(!$(this).is($(e.target))) {
        return false;
    }
    $("<span>Text here</span>").appendTo($(this)).on("click", function() {
         $(this).remove();
    });
});
$(“appendHere”)。在(“单击”)上,函数(e){
如果(!$(this).is($(e.target))){
返回false;
}
$(“此处文本”).appendTo($(this)).on(“单击”,函数(){
$(this.remove();
});
});

您最好不要使用
live
,而是尝试
.bind()
.on()

问题是当您单击
span
时,会单击
div
,然后单击
time

所以你可以试着这样做:

$("appendHere").on("click", function(e) {
    if(!$(this).is($(e.target))) {
        return false;
    }
    $("<span>Text here</span>").appendTo($(this)).on("click", function() {
         $(this).remove();
    });
});
$(“appendHere”)。在(“单击”)上,函数(e){
如果(!$(this).is($(e.target))){
返回false;
}
$(“此处文本”).appendTo($(this)).on(“单击”,函数(){
$(this.remove();
});
});

您最好不要使用
live
,而是尝试
.bind()
.on()

问题是当您单击
span
时,会单击
div
,然后单击
time

所以你可以试着这样做:

$("appendHere").on("click", function(e) {
    if(!$(this).is($(e.target))) {
        return false;
    }
    $("<span>Text here</span>").appendTo($(this)).on("click", function() {
         $(this).remove();
    });
});
$(“appendHere”)。在(“单击”)上,函数(e){
如果(!$(this).is($(e.target))){
返回false;
}
$(“此处文本”).appendTo($(this)).on(“单击”,函数(){
$(this.remove();
});
});
我在此处指定#appendHere的用法只是因为您可能面临事件冒泡的情况。这意味着,尽管点击了跨度,但事实上,或者至少浏览器仍在这样对待它。单击父divI指定使用#appendHere仅因为您可能面临事件冒泡的情况。这意味着,尽管点击了跨度,但事实上,或者至少浏览器仍在这样对待它。单击父divI指定使用#appendHere仅因为您可能面临事件冒泡的情况。这意味着,尽管点击了跨度,但事实上,或者至少浏览器仍在这样对待它。单击父divI指定使用#appendHere仅因为