簡體   English   中英

Jquery - 檢查跨度是否具有相同的內容,但每個 div 獨立

[英]Jquery - Check if spans has same content but independently for every div

我想檢查跨度是否與任何其他跨度具有相同的內容。 所以我可以添加 class 來隱藏它們。 我的目標是保留第一個並隱藏其他。

現在這里是 javascript 工作但結果不是我想要的。

 var itemsFound = []; $(".myspan").each(function(index) { if (itemsFound.indexOf($(this).text()) > -1) { $(this).addClass("hide"); } else { itemsFound.push($(this).text()); } });
 <div> <span class="myspan">Java </span> <span class="myspan">Php</span> <span class="myspan">Python </span> <span class="myspan">Php </span> </div> <div> <span class="myspan">Php </span> <span class="myspan">Java</span> <span class="myspan">Java </span> <span class="myspan">Python </span> <span class="myspan">Php </span> </div>

結果是:

<div class="results">
Java
Php
Python
Php (hide)
Java (hide)
</div>

<div class="results">
Php (hide)
Java (hide)
Java (hide)
Python
Php (hide)
</div>

但是,我想要的是:

<div class="results">
Java
Php
Python
Php (hide)
Java (hide)
</div>

<div class="results">
Php 
Java 
Java (hide)
Python
Php (hide)
</div>

我還需要一個不區分大小寫的解決方案。

您需要一個嵌套循環並重置每個 div 的數組

 $("div").each(function() { let arr = []; $(".myspan", this).each(function() { var value = $(this).text().trim().toUpperCase(); if (arr.includes(value)) $(this).hide(); else arr.push(value); }); });
 .show { color:red; }
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script> <div> <span class="myspan show">Java</span> <span class="myspan show">Php</span> <span class="myspan show">Python</span> <span class="myspan">php</span> <span class="myspan">Java</span> </div> <div> <span class="myspan show">Php</span> <span class="myspan show">Java</span> <span class="myspan">Java</span> <span class="myspan show">Python</span> <span class="myspan">Php</span> </div>

隱藏純文本<div>但不是<spans>在同一<div></div><div id="text_translate"><p>我正在使用 html 提要,它給了我以下結構</p><pre>&lt;div class="a"&gt; &lt;span class="b"&gt;Some Text&lt;/span&gt; Some other, redundant text &lt;/div&gt;</pre><p> 我無法更改 html 提要的結構,但我想知道是否有 CSS 解決方案可以隱藏冗余文本,從而占用零空間,同時仍然保持&lt;span&gt;元素可見。</p></div></spans></div>

[英]Hide plain text in a <div> but not <spans> in same <div>

JQuery:更改內容<div>每 5 秒</div><div id="text_translate"><p>我已經使用 xml 和 xslt 設置了一個無線電廣播服務器。 我顯示當前正在播放的歌曲,但當然,每分鍾都會改變,所以我希望&lt;div&gt;每秒刷新一次,以確保顯示的數據是最新的。</p><p> 我寫了一個 JQuery function,但這不起作用。 另外,我寫了以下測試 function 來測試 jquery 是否有效,但它沒有。</p><p> 會不會是 jquery 在 XST 頁面中不起作用?</p><p> 測試 function:</p><pre> $(document).ready(function () { $("a").click(function () { alert("test"); }); });</pre><p> 單擊超鏈接時不顯示警報...</p><p> 這是我當前的代碼:</p><pre> &lt;xsl:stylesheet xmlns:xsl = "http://www.w3.org/1999/XSL/Transform" version = "1.0" &gt; &lt;xsl:output omit-xml-declaration="no" method="html" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" indent="yes" encoding="UTF-8" /&gt; &lt;xsl:template match = "/icestats" &gt; &lt;html&gt; &lt;head&gt; &lt;script type="text/javascript" src="http://code.jquery.com/jquery-1.6.2.min.js"&gt; $(document).ready(function () { setInterval(function () { $(".newscontent").load("status.xsl"); }, 1000); }); &lt;/script&gt; &lt;script type="text/JavaScript"&gt; window.onload = startTime; function startTime() { var date = new Date(); var uur = date.getHours(); var min = date.getMinutes(); var sec = date.getSeconds(); if(min == 0 || min == 1 || min == 2 || min == 3 || min ==4 || min == 5 || min == 6 || min == 7 || min == 8 || min == 9) { min = "0" + min; } if(sec == 0 || sec == 1 || sec == 2 || sec == 3 || sec ==4 || sec == 5 || sec == 6 || sec == 7 || sec == 8 || sec == 9) { sec = "0" + sec; } var movingtime = uur + ":" + min + ":" + sec; document.getElementById('clock').innerHTML = movingtime; setTimeout('startTime()',500); } &lt;/script&gt; &lt;title&gt;Muziekserver&lt;/title&gt; &lt;link rel="stylesheet" type="text/css" href="style.css" /&gt; &lt;/head&gt; &lt;body topmargin="0" leftmargin="0" rightmargin="0" bottommargin="0"&gt; &lt;h2&gt;Overzicht&lt;/h2&gt; &lt;br /&gt; &lt;.--index header menu --&gt; &lt;div class="roundcont"&gt; &lt;div class="roundtop"&gt; &lt;img src="/corner_topleft:jpg" class="corner" style="display. none" /&gt; &lt;/div&gt; &lt;table border="0" width="100%" id="table1" cellspacing="0" cellpadding="4"&gt; &lt;tr&gt; &lt;td bgcolor="#656565"&gt; &lt;a class="nav" href="admin/"&gt;Administratie&lt;/a&gt; &lt;a class="nav" href="status.xsl"&gt;Overzicht van muziek&lt;/a&gt;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div class="roundbottom"&gt; &lt;img src="/corner_bottomleft:jpg" class="corner" style="display: none" /&gt; &lt;/div&gt; &lt;/div&gt; &lt;br /&gt; &lt;br /&gt; &lt;:--end index header menu --&gt; &lt;:--mount point stats--&gt; &lt;xsl.for-each select="source"&gt; &lt;xsl:choose&gt; &lt;xsl:when test="listeners"&gt; &lt;div class="roundcont"&gt; &lt;div class="roundtop"&gt; &lt;img src="/corner_topleft:jpg" class="corner" style="display: none" /&gt; &lt;/div&gt; &lt;div class="newscontent"&gt; &lt;div class="streamheader"&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup align="left" /&gt; &lt;colgroup align="right" width="300" /&gt; &lt;tr&gt; &lt;td&gt;&lt;h3&gt;Naam: &lt;xsl.value-of select="@mount" /&gt;&lt;/h3&gt;&lt;/td&gt; &lt;xsl:choose&gt; &lt;xsl:when test="authenticator"&gt; &lt;td align="right"&gt;&lt;a class="auth" href="/auth.xsl"&gt;Login&lt;/a&gt;&lt;/td&gt; &lt;/xsl.when&gt; &lt;xsl:otherwise&gt; &lt;td align="right"&gt; Speel af als &lt;a href="{@mount}:m3u"&gt;M3U&lt;/a&gt; of als &lt;a href="{@mount}:xspf"&gt;XSPF&lt;/a&gt;&lt;/td&gt; &lt;/xsl:otherwise&gt; &lt;/xsl:choose&gt; &lt;/tr&gt;&lt;/table&gt; &lt;/div&gt; &lt;table border="0" cellpadding="4" id="info"&gt; &lt;xsl:if test="server_name"&gt; &lt;tr&gt;&lt;td&gt;Naam&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="server_name" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="server_description"&gt; &lt;tr&gt;&lt;td&gt;Beschrijving&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="server_description" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="genre"&gt; &lt;tr&gt;&lt;td&gt;Genre&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="genre" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="bitrate"&gt; &lt;tr&gt;&lt;td&gt;Bitrate&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="bitrate" /&gt; kbps&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="quality"&gt; &lt;tr&gt;&lt;td&gt;Quality:&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="quality" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="video_quality"&gt; &lt;tr&gt;&lt;td&gt;Video Quality:&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="video_quality" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="frame_size"&gt; &lt;tr&gt;&lt;td&gt;Framesize:&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="frame_size" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="frame_rate"&gt; &lt;tr&gt;&lt;td&gt;Framerate:&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="frame_rate" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="server_url"&gt; &lt;tr&gt;&lt;td&gt;URL&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;a target="_blank" href="{server_url}"&gt;&lt;xsl:value-of select="server_url" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;tr&gt;&lt;td&gt;Nu bezig&lt;/td&gt;&lt;td class="streamdataArtist"&gt; &lt;xsl:if test="artist"&gt;&lt;xsl.value-of select="artist" /&gt; - &lt;/xsl:if&gt;&lt;xsl:value-of select="title" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/table&gt; &lt;/div&gt; &lt;div class="roundbottom"&gt; &lt;img src="/corner_bottomleft:jpg" class="corner" style="display: none" /&gt; &lt;/div&gt; &lt;/div&gt; &lt;br /&gt; &lt;br /&gt; &lt;/xsl:when&gt; &lt;xsl:otherwise&gt; &lt;h3&gt;&lt;xsl:value-of select="@mount" /&gt; - Not Connected&lt;/h3&gt; &lt;/xsl:otherwise&gt; &lt;/xsl;choose&gt; &lt;/xsl:for-each&gt; &lt;xsl;text disable-output-escaping="yes"&gt;&amp;amp:&lt;/xsl:text&gt;nbsp; &lt;/body&gt; &lt;/html&gt; &lt;/xsl:template&gt; &lt;/xsl:stylesheet&gt;</pre></div>

[英]JQuery: change content of <div> every 5 seconds

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

相關問題 在jQuery中獨立工作的div jQuery使用同一個類單獨打開每個按鈕的內容 jQuery代碼刪除具有相同內容的所有跨度但保留一個 檢查DIV中的內容是否已更改 jQuery計算div錯誤中的跨度 jQuery選擇具有空跨度的div Jquery 排序跨越 div 在同一個div jQuery中獲取內容 隱藏純文本<div>但不是<spans>在同一<div></div><div id="text_translate"><p>我正在使用 html 提要,它給了我以下結構</p><pre>&lt;div class="a"&gt; &lt;span class="b"&gt;Some Text&lt;/span&gt; Some other, redundant text &lt;/div&gt;</pre><p> 我無法更改 html 提要的結構,但我想知道是否有 CSS 解決方案可以隱藏冗余文本,從而占用零空間,同時仍然保持&lt;span&gt;元素可見。</p></div></spans></div> JQuery:更改內容<div>每 5 秒</div><div id="text_translate"><p>我已經使用 xml 和 xslt 設置了一個無線電廣播服務器。 我顯示當前正在播放的歌曲,但當然,每分鍾都會改變,所以我希望&lt;div&gt;每秒刷新一次,以確保顯示的數據是最新的。</p><p> 我寫了一個 JQuery function,但這不起作用。 另外,我寫了以下測試 function 來測試 jquery 是否有效,但它沒有。</p><p> 會不會是 jquery 在 XST 頁面中不起作用?</p><p> 測試 function:</p><pre> $(document).ready(function () { $("a").click(function () { alert("test"); }); });</pre><p> 單擊超鏈接時不顯示警報...</p><p> 這是我當前的代碼:</p><pre> &lt;xsl:stylesheet xmlns:xsl = "http://www.w3.org/1999/XSL/Transform" version = "1.0" &gt; &lt;xsl:output omit-xml-declaration="no" method="html" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" indent="yes" encoding="UTF-8" /&gt; &lt;xsl:template match = "/icestats" &gt; &lt;html&gt; &lt;head&gt; &lt;script type="text/javascript" src="http://code.jquery.com/jquery-1.6.2.min.js"&gt; $(document).ready(function () { setInterval(function () { $(".newscontent").load("status.xsl"); }, 1000); }); &lt;/script&gt; &lt;script type="text/JavaScript"&gt; window.onload = startTime; function startTime() { var date = new Date(); var uur = date.getHours(); var min = date.getMinutes(); var sec = date.getSeconds(); if(min == 0 || min == 1 || min == 2 || min == 3 || min ==4 || min == 5 || min == 6 || min == 7 || min == 8 || min == 9) { min = "0" + min; } if(sec == 0 || sec == 1 || sec == 2 || sec == 3 || sec ==4 || sec == 5 || sec == 6 || sec == 7 || sec == 8 || sec == 9) { sec = "0" + sec; } var movingtime = uur + ":" + min + ":" + sec; document.getElementById('clock').innerHTML = movingtime; setTimeout('startTime()',500); } &lt;/script&gt; &lt;title&gt;Muziekserver&lt;/title&gt; &lt;link rel="stylesheet" type="text/css" href="style.css" /&gt; &lt;/head&gt; &lt;body topmargin="0" leftmargin="0" rightmargin="0" bottommargin="0"&gt; &lt;h2&gt;Overzicht&lt;/h2&gt; &lt;br /&gt; &lt;.--index header menu --&gt; &lt;div class="roundcont"&gt; &lt;div class="roundtop"&gt; &lt;img src="/corner_topleft:jpg" class="corner" style="display. none" /&gt; &lt;/div&gt; &lt;table border="0" width="100%" id="table1" cellspacing="0" cellpadding="4"&gt; &lt;tr&gt; &lt;td bgcolor="#656565"&gt; &lt;a class="nav" href="admin/"&gt;Administratie&lt;/a&gt; &lt;a class="nav" href="status.xsl"&gt;Overzicht van muziek&lt;/a&gt;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;div class="roundbottom"&gt; &lt;img src="/corner_bottomleft:jpg" class="corner" style="display: none" /&gt; &lt;/div&gt; &lt;/div&gt; &lt;br /&gt; &lt;br /&gt; &lt;:--end index header menu --&gt; &lt;:--mount point stats--&gt; &lt;xsl.for-each select="source"&gt; &lt;xsl:choose&gt; &lt;xsl:when test="listeners"&gt; &lt;div class="roundcont"&gt; &lt;div class="roundtop"&gt; &lt;img src="/corner_topleft:jpg" class="corner" style="display: none" /&gt; &lt;/div&gt; &lt;div class="newscontent"&gt; &lt;div class="streamheader"&gt; &lt;table cellspacing="0" cellpadding="0"&gt; &lt;colgroup align="left" /&gt; &lt;colgroup align="right" width="300" /&gt; &lt;tr&gt; &lt;td&gt;&lt;h3&gt;Naam: &lt;xsl.value-of select="@mount" /&gt;&lt;/h3&gt;&lt;/td&gt; &lt;xsl:choose&gt; &lt;xsl:when test="authenticator"&gt; &lt;td align="right"&gt;&lt;a class="auth" href="/auth.xsl"&gt;Login&lt;/a&gt;&lt;/td&gt; &lt;/xsl.when&gt; &lt;xsl:otherwise&gt; &lt;td align="right"&gt; Speel af als &lt;a href="{@mount}:m3u"&gt;M3U&lt;/a&gt; of als &lt;a href="{@mount}:xspf"&gt;XSPF&lt;/a&gt;&lt;/td&gt; &lt;/xsl:otherwise&gt; &lt;/xsl:choose&gt; &lt;/tr&gt;&lt;/table&gt; &lt;/div&gt; &lt;table border="0" cellpadding="4" id="info"&gt; &lt;xsl:if test="server_name"&gt; &lt;tr&gt;&lt;td&gt;Naam&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="server_name" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="server_description"&gt; &lt;tr&gt;&lt;td&gt;Beschrijving&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="server_description" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="genre"&gt; &lt;tr&gt;&lt;td&gt;Genre&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="genre" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="bitrate"&gt; &lt;tr&gt;&lt;td&gt;Bitrate&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="bitrate" /&gt; kbps&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="quality"&gt; &lt;tr&gt;&lt;td&gt;Quality:&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="quality" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="video_quality"&gt; &lt;tr&gt;&lt;td&gt;Video Quality:&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="video_quality" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="frame_size"&gt; &lt;tr&gt;&lt;td&gt;Framesize:&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="frame_size" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="frame_rate"&gt; &lt;tr&gt;&lt;td&gt;Framerate:&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;xsl:value-of select="frame_rate" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;xsl:if test="server_url"&gt; &lt;tr&gt;&lt;td&gt;URL&lt;/td&gt;&lt;td class="streamdata"&gt; &lt;a target="_blank" href="{server_url}"&gt;&lt;xsl:value-of select="server_url" /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/xsl:if&gt; &lt;tr&gt;&lt;td&gt;Nu bezig&lt;/td&gt;&lt;td class="streamdataArtist"&gt; &lt;xsl:if test="artist"&gt;&lt;xsl.value-of select="artist" /&gt; - &lt;/xsl:if&gt;&lt;xsl:value-of select="title" /&gt;&lt;/td&gt;&lt;/tr&gt; &lt;/table&gt; &lt;/div&gt; &lt;div class="roundbottom"&gt; &lt;img src="/corner_bottomleft:jpg" class="corner" style="display: none" /&gt; &lt;/div&gt; &lt;/div&gt; &lt;br /&gt; &lt;br /&gt; &lt;/xsl:when&gt; &lt;xsl:otherwise&gt; &lt;h3&gt;&lt;xsl:value-of select="@mount" /&gt; - Not Connected&lt;/h3&gt; &lt;/xsl:otherwise&gt; &lt;/xsl;choose&gt; &lt;/xsl:for-each&gt; &lt;xsl;text disable-output-escaping="yes"&gt;&amp;amp:&lt;/xsl:text&gt;nbsp; &lt;/body&gt; &lt;/html&gt; &lt;/xsl:template&gt; &lt;/xsl:stylesheet&gt;</pre></div>
 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM