我必须制作闪烁的文字,但仅限于文字="某些内容"。我已经有了工作机制,但不知道我能把这个条件放在哪里,你能帮忙吗?:
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>
在这个脚本里面我可以指定只在文字=&#34;某些东西&#34;?
的地方闪烁更新
<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>
答案 0 :(得分:1)
你可以使用jquery的.Contains选择器,即检查你将要眨眼的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
}
}
答案 1 :(得分:1)
以下是对原始代码的一个小修改,它可以轻松更改您要搜索的文本:
{
_id: ObjectId("557138249d46084df20620dd"),
name: "Example"
employee: [
{
username: "example@domain.com",
address: []
}
]
}
$(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;
}
答案 2 :(得分:0)
尝试添加此内容:
function blink(elem, times, speed) {
if (elem.text() != "something") {
return;
}
// rest of code