Javascript 如果div的文本与另一个div相同,如何删除该div?

Javascript 如果div的文本与另一个div相同,如何删除该div?,javascript,jquery,d3.js,Javascript,Jquery,D3.js,我有一个d3面积图,它有一个工具提示,在两个不同的div中显示相同的文本。第一个div.tooltip.headline.record,以粗体显示所选值。另一个div类,.record label,显示x轴上给定点处的所有值,包括选定路径和非选定路径。这是一个例子 为了说明这一点,它目前看起来是这样的: 我一直在努力实现这样的结果: 。。。或者像这样: 我尝试了以下隐藏或删除重复的.record labeldiv的方法,但没有成功,也没有错误消息来帮助进一步诊断 function getReco

我有一个d3面积图,它有一个工具提示,在两个不同的div中显示相同的文本。第一个div
.tooltip.headline.record
,以粗体显示所选值。另一个div类,
.record label
,显示x轴上给定点处的所有值,包括选定路径和非选定路径。这是一个例子

为了说明这一点,它目前看起来是这样的:

我一直在努力实现这样的结果:

。。。或者像这样:

我尝试了以下隐藏或删除重复的
.record label
div的方法,但没有成功,也没有错误消息来帮助进一步诊断

function getRecordContent(obj, pos) {
  if ( $(".tooltip-headline-record").text() == $(".record-label").text() ) {
  $(".record-label").hide();
  //$(".record-label").remove();
  //console.log("same");
  }
    return '<li><div class="record-label">' + obj.state + " " + obj.record.toLowerCase() + " " + numFormat(obj.values[pos].y) + '</div></li>'   
}
函数getRecordContent(obj,pos){ 如果($(“.tooltip headline record”).text()==$(“.record label”).text()){ $(“.record label”).hide(); //$(“.record label”).remove(); //控制台日志(“相同”); } 返回'
  • '+obj.state+''+obj.record.toLowerCase()++'+numFormat(obj.values[pos.y]+'
  • ' } 这里再次展示了一个Plunker,它演示了我试图解决的问题(具体请参见从第480行开始的代码:
    这就是你要找的吗

    相关代码更改:

  • 整个数据集被传递到
    getRecordContent
    函数。所以我改变了这一点:当鼠标悬停在“admissions”上时,传递“transfers”和“codependents”(第435行)

  • 更改了main.css中工具提示的z索引(尝试将其删除并将鼠标悬停在jquery滑块附近)


  • 希望这能有所帮助。:

    太棒了;非常感谢。我认为最好在更高的级别上过滤掉重复项,但不知道如何过滤。当鼠标悬停在
    主图表上时,是否有类似的简单方法可以完全隐藏或过滤掉工具提示中的
    记录列表
    ,但是当鼠标移动到单个州的小倍数上时,请在工具提示中保留
    记录列表
    ?我想知道您打算如何处理主图表上的工具提示?因为我觉得不太对劲。无论如何,我已经更新了修复主图表上的工具提示。让我知道这是否有帮助。我的主图表工具提示计划实际上是显示-而不是所选州对应的非所选值-(1)该月来自该州的记录总数(录取、转学和相互依赖),以及(2)该月来自所有州的记录总数。(您可能已经注意到我一直在修补的
    monhtotals
    global
    数组代码)。不过,这可能应该是一个单独的问题——我正在另一个窗口中研究这个问题。我想让你试试(如果你不介意的话),如果你遇到任何问题,请告诉我,我会帮你的。只要确保在第435行附近有一个控制台日志语句,检查“d”、“dataset”、“filtered_dataset”和“content”,使用and.:)
    var filtered_dataset = dataset.filter(function(row){return row.record !== d.record; });
    for (var i = 0; i < filtered_dataset.length; i++) {
       content += getRecordContent(filtered_dataset[i], idx); 
    }
    
    return '<li><span class="record-label">' + obj.state + ' ' + obj.record.toLowerCase() + '</span><span class="record-value">' + numFormat(obj.values[pos].y) + '</span></li>'    
    
    var filtered_dataset = dataset.filter(function(row){return row.record !== d.record && row.state === d.state; });
    
    z-index: 2;