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。