删除先前附加的文本

时间:2011-05-27 00:33:58

标签: jquery css prepend

我有一个使用JQuery的突出显示功能,它可以更改菜单中单击的<li>元素的css。该函数还预先设置一对左括号&lt;&lt;作为伪箭头。

但是如何删除&lt;&lt;当我切换到下一个<li>

$(".sdv-nrml").click(function(){

//remove old highlighted li 
$(".sdv-nrml").css({'background' : '#ffcc66' , 'color' : '#000000' , 'text-align' : 'right'});

//assign new css and prepend arrow
$(this).css({'background' : '#996600' , 'color' : '#ffff66' , 'text-align' : 'left'});
$(this).prepend("<< ");
});

由于

3 个答案:

答案 0 :(得分:12)

我会将<<包含在<span>

$(this).prepend('<span class="prepended">&laquo; </span');

然后删除:

$(".prepended").remove();

注意:我使用«而不是&lt;&lt;。我觉得它更有吸引力。

答案 1 :(得分:7)

使用span将其包裹在class中并将其删除。

$(this).prepend('<span class="pseudo-arrow">&lt;&lt;</span>');

答案 2 :(得分:0)

为什么你没有为所选州提供课程?     .selected-item {         背景:#ffcc66;         颜色:#000;         文本对齐:权利;     }

所以你的脚本可以这样使用:

$(".sdv-nrml").click(function(){

    //remove old highlighted li
    $(".sdv-nrml").each(function(){
        $(this).removeClass("selected arrow");
    });

    //assign new css and prepend arrow
    $(this).addClass("selected");
    $(this).prepend("<span class='arrow'>&lt;&lt;</span> ");
});