[英]Blink only specific text
我必須使閃爍的文本,但僅在文本=“某物”的地方。 我已經有工作機制,但是不知道我可以把這種情況放在哪里,您能幫忙嗎?:
css:
.blink {
color: #FFF !important;
background: #FC79CE;
}
<script>
$(document).ready(function () {
blink(".msgblink", 4, 500);
});
function blink(elem, times, speed) {
if (times > 0 || times < 0) {
if ($(elem).hasClass("blink"))
$(elem).removeClass("blink");
else
$(elem).addClass("blink");
}
clearTimeout(function () { blink(elem, times, speed); });
if (times > 0 || times < 0) {
setTimeout(function () { blink(elem, times, speed); }, speed);
times -= .5;
}
}
</script>
我可以在此腳本中的哪兒指定僅在text =“ something”的地方眨眼?
更新:
<th class="grid-header msgblink" title="MessageType"><div class="grid-filter" data-filterdata="[]" data-name="MessageType" data-type="System.String" data-widgetdata="null"><span class="grid-filter-btn" title="Filter this column"></span></div><div class="grid-header-title"><a href="?grid-column=MessageType&grid-dir=0">MessageType</a></div></th>
<td class="grid-cell msgblink" data-name="MessageType"> INFO something</td>
您可以為此使用jquery的選擇器。即檢查要閃爍的ele的html文本。
范例:
$( "div:contains('John')" ).css( "text-decoration", "underline" );
您的眨眼功能可能如下
function blink(elem, times, speed) {
var id= $(elem).prop("id");
if($("#" +id + ":contains('John')" )
{
//your code to adding class
}
}
或者如果您正在檢查文本是否等於
function blink(elem, times, speed) {
alert($(elem).val())
if($(elem).val()==="something" )///for input element
//if($(elem).text()==="something" )//for other html element like div,span etc.
{
//your code to adding class
}
}
這是對原始代碼的一個小修改,可以生效,並且您可以輕松更改要搜索的文本:
$(document).ready(function () { //blink(".msgblink", 4, 500); $(".msgblink").each(function () { if ($(this).text().indexOf('something') !== -1) { blink(this, 4, 500); } }); }); function blink(elem, times, speed) { if (times > 0 || times < 0) { if ($(elem).hasClass("blink")) $(elem).removeClass("blink"); else $(elem).addClass("blink"); } clearTimeout(function () { blink(elem, times, speed); }); if (times > 0 || times < 0) { setTimeout(function () { blink(elem, times, speed); }, speed); times -= .5; } }
.blink { color: #FFF !important; background: #FC79CE; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <div class="msgblink">something</div> <div class="msgblink">nothing</div> <div class="msgblink">something</div> <div class="msgblink">another</div> <table> <th class="grid-header msgblink" title="MessageType"><div class="grid-filter" data-filterdata="[]" data-name="MessageType" data-type="System.String" data-widgetdata="null"><span class="grid-filter-btn" title="Filter this column"></span></div><div class="grid-header-title"><a href="?grid-column=MessageType&grid-dir=0">MessageType</a></div></th> <tr> <td class="grid-cell msgblink" data-name="MessageType"> INFO something</td> </tr> </table>
嘗試添加以下內容:
function blink(elem, times, speed) {
if (elem.text() != "something") {
return;
}
// rest of code
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.