Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如果Div包含精确的文本,请添加类_Javascript_Jquery_Html_If Statement - Fatal编程技术网

Javascript 如果Div包含精确的文本,请添加类

Javascript 如果Div包含精确的文本,请添加类,javascript,jquery,html,if-statement,Javascript,Jquery,Html,If Statement,好的,我想制作一个脚本,如果这段代码包含确切的单词“is123”,那么类“a”将被添加到div id“#1”中。问题是,“:contains”将在不完全包含整个字符串的情况下工作。我做了研究并找到了答案,但没有一个是我能够理解并适用于我的情况的!谢谢 div id 1是每秒更改的倒计时 <div id="1">1:05</div> <div class="2 hidden">ayyy</div> <script> if ($("#1")

好的,我想制作一个脚本,如果这段代码包含确切的单词“is123”,那么类“a”将被添加到div id“#1”中。问题是,“:contains”将在不完全包含整个字符串的情况下工作。我做了研究并找到了答案,但没有一个是我能够理解并适用于我的情况的!谢谢

div id 1是每秒更改的倒计时

<div id="1">1:05</div>
<div class="2 hidden">ayyy</div>
<script>
if ($("#1").text().trim() === "1:05") {
$(".2").removeClass('hidden');
}
</script>
1:05
哎呀
如果($(“#1”).text().trim()=“1:05”){
$(.2”).removeClass('hidden');
}
使用以下方法:

$("#1").text()==="is123"
=
表示完全匹配

代码:

is123
如果($(“#1”).text()=“is123”){
$(“#1”).addClass('a');
}
试试这个

<script>
if ($(#1).text() === "is123";).addClass('a'))
</script>

<div id="1">is123</div>

if($(#1).text()=“is123”).addClass('a'))
is123
is123
如果($(“#1”).text().trim()=“is123”){
$(“#1”).addClass('a');
}
您需要将脚本放在元素之后,如果它在元素之前,它将找不到元素,因为DOM尚未渲染它。除非将其包装在“jQuery文档就绪”函数中

编辑以反映对OP的更改

<div id="1">is123</div>
<script>
if ($("#1").text().trim() === "is123") {
    $(".2").removeClass('hidden');
}
</script>
is123
如果($(“#1”).text().trim()=“is123”){
$(.2”).removeClass('hidden');
}

如果您想在计时器达到某一点时触发事件,可以通过几种方法来实现

示例1

如果您有权访问该代码,最好挂接到计时器函数本身。这可能是最有效的方法:

//当计时器更新时,此操作立即运行
函数检查时间(timerValue){
如果(timerValue=='01:05'){
$('.alert').show();
}
}
//模拟您的计时器-由http://stackoverflow.com/a/20618517/1767412
功能启动计时器(持续时间、显示){
var start=Date.now(),
差异,
会议记录,
秒;
函数计时器(){
diff=持续时间-((Date.now()-start)/1000)| 0);
分钟=(差异/60)| 0;
秒=(差异%60)| 0;
分钟=分钟<10?“0”+分钟:分钟;
秒=秒<10?“0”+秒:秒;
display.textContent=分钟+“:”+秒;

if(diff
if($('#1').text().trim()=='is123'){$('#1').addClass('a');}
太好了,你能举个例子说明如何在上面的代码中实现它吗?我确实相信我已经尝试过了。@xenonprozz补充道:)@xenonprozz试试这个。我忘了加括号了。@xenonprozz对不起,呃,我有一个额外的括号,直到没有其他括号为止me@xenonprozz:不,您错过了双引号此代码无效,巴德,我们不能使用“cointains”更具体地说,这个脚本应该放在服务器端还是客户端?@xenonprozz JavaScript是一种客户端脚本语言。像往常一样将
div
放在页面中。建议您将任何JavaScript代码放在关闭
body
标记之前/之后。现在我可能没有正确解释otice.“if($(“#1”).text().trim()==”is123“{”让我们说,“$(“#2”).addClass('a');“如果div#1等于该文本,另一个div会添加一个类。@Xennoprozz对不起,我真的不明白你想做什么。”say@xenonprozz然后您只需将
$(“#1”).addClass('a');
更改为
$(“#2”).addClass('a')
好的,就我目前的情况而言,计时器在后端,这会影响代码吗?是的,希望你看到我给了你荣誉。现在回顾这一点,非常令人惊讶的是,我在两年内学到了很多东西,感谢这么多
<div id="1">is123</div>
<script>
if ($("#1").text().trim() === "is123") {
    $("#1").addClass('a');
}
</script>
<div id="1">is123</div>
<script>
if ($("#1").text().trim() === "is123") {
    $(".2").removeClass('hidden');
}
</script>