Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/379.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 如何在一次单击中同时更改文本和图标_Javascript_Html_Css - Fatal编程技术网

Javascript 如何在一次单击中同时更改文本和图标

Javascript 如何在一次单击中同时更改文本和图标,javascript,html,css,Javascript,Html,Css,我想在用户单击播放图标时播放视频。当用户单击“播放”图标或“观看视频”文本时,视频应开始播放,“播放”图标和“观看视频”文本应分别更改为“暂停”图标和“暂停视频”文本 var vid=document.getElementById('myVideo'); var btn=document.getElementById(“watch”); 函数playVid(){ 如果(参见暂停){ 视频播放(); btn.classList.toggle(“fa暂停圈”); btn.innerHTML=“暂停

我想在用户单击播放图标时播放视频。当用户单击“播放”图标或“观看视频”文本时,视频应开始播放,“播放”图标和“观看视频”文本应分别更改为“暂停”图标和“暂停视频”文本

var vid=document.getElementById('myVideo');
var btn=document.getElementById(“watch”);
函数playVid(){
如果(参见暂停){
视频播放();
btn.classList.toggle(“fa暂停圈”);
btn.innerHTML=“暂停视频”;
}否则{
参阅暂停();
btn.classList.toggle(“fa播放圈”);
btn.innerHTML=“观看视频”;
}
}

印度香料视频
观看视频

您不想切换要删除一个类并添加另一个类的类。当您切换类时,您可以使用replace函数来执行此操作。如果元素已经有或没有该类,则将根据该事实添加或删除该类

var vid=document.getElementById('myVideo');
var btn=document.getElementById(“watch”);
函数playVid(){
如果(参见暂停){
视频播放();
btn.classList.replace(“fa播放圈”、“fa暂停圈”);
btn.querySelector('.button_text').innerText=“观看视频”;
}否则{
参阅暂停();
btn.querySelector('.fa').classList.replace(“fa暂停圈”、“fa播放圈”);
btn.querySelector('.button_text').innerText=“观看视频”;
}
}

印度香料视频
观看视频
您可以尝试以下方法:

var vid=document.getElementById('myVideo');
var btn=document.getElementById(“watch”);
函数playVid(){
如果(参见暂停){
视频播放();
btn.querySelector('.fa').classList.replace('fa-play-circle','fa-pause circle');
btn.querySelector('span').innerHTML=“暂停视频”;
}
否则{
参阅暂停();
btn.querySelector('.fa').classList.replace('fa-pause-circle','fa-play circle');
btn.querySelector('span').innerHTML=“观看视频”;
}
}

印度香料视频
观看视频

正如上面提到的答案,替换是选项之一。这里我还演示了如何删除和添加
play
pause
图标类。代码的行
btn.innerHTML
替换最初会从元素中删除
标记因此这里不可能进行
替换
以下是添加和删除
播放
暂停
单击类的工作演示

var vid=document.getElementById('myVideo');
var btn=document.getElementById(“watch”);
函数playVid(){
如果(参见暂停){
视频播放();
btn.classList.remove('fa-play-circle');
btn.classList.add('fa-pause-circle');
btn.classList.add('fa');
btn.innerHTML=“暂停视频”;
}否则{
参阅暂停();
btn.classList.remove('fa-pause-circle');
btn.classList.add('fa-play-circle');
btn.classList.add('fa');
btn.innerHTML=“观看视频”;
}
}

印度香料视频
观看视频

谢谢,现在,单击后图标不会消失,但图标不可见。而不是出现一些框。这行“btn.innerHTML=”暂停视频“将删除“i”tag@karuna我添加了一个片段,您可以这样做。@karuna尝试使用
textContent
而不是
innerHTML
,这样您的btn中的html就不会被删除。更新了我的答案。@karuna也更改了它,这样您在更改类时实际上更改了
i
元素,而不是
h3
元素。请始终清楚地解释您的答案answer@Ramesh用一些解释更新了帖子。因此,在这种情况下,你不需要在h3中使用“i”,只需在h3中添加类“fa fa play circle”。@Prawinsoni但有一种正式的方法可以使用字体awesome图标OK,那么不应该删除“i”标记,而应该在“i”标记中替换类而不是h3。