【问题标题】:how to remove <object> video tag in HTML?如何删除 HTML 中的 <object> 视频标签?
【发布时间】:2014-01-06 09:47:26
【问题描述】:

我的代码是这样的:

<div id="player">
    <object width='100%' height='600' classid="CLSID:6BF52A52-394A-11d3-B153-00C04F79FAA6">
        <param name='url' value='Video/3.mp4'/>
        <param name='ShowControls' value='-1' />
        <param name='ShowDisplay' value='-1' />   
        <param name='ShowStatusBar' value='-1' />
        <param name='stretchToFit' value='0' />
        <param name='uiMode' value='none' />  
    </object>
</div>

我使用$("#player object").remove()删除对象标签,实际上对象标签被删除了,但视频也在页面中播放,即使$("#player").remove()

如何删除带有对象标签的正在播放的视频??

【问题讨论】:

  • 你的语法基本没问题。您的页面中是否有多个 id="player" 的标签? id 必须是唯一的,否则您很可能会删除错误的元素!
  • 我的页面中只有一个对象..0.0
  • 您也可以使用 $("#player").html("") 删除其内容,但这仅在对象标签是
    .否则我不确定你做错了什么,这对我来说很完美,正如你在这个小提琴中看到的那样:jsfiddle.net/9AEY6

标签: javascript html object video


【解决方案1】:

在移除节点之前隐藏对象将重置它,因此它会停止视频。

$("#player object").hide().remove();

【讨论】:

  • 视频也在页面中,继续播放,但
    中没有元素
【解决方案2】:

你可以试试这个,

$("#player object").hide();
$("#player object").remove()

【讨论】:

  • 元素被删除了,但是当我使用 $("#player object").show() 时,视频又出现了。
  • 所以你可以尝试组合,var videoPlayer = $("#player object")[0]; videoPlayer.pause();$(videoPlayer).remove();$("#player object").hide(); $("#player 对象").remove();
【解决方案3】:

如果视频仍在播放,则在移除之前停止/暂停。

var videoPlayer = $("#player object")[0]; // DOMElement, not jQuery object

// Stop video/audio
videoPlayer.pause(); 

// Remove from page using jQuery library
$(videoPlayer).remove(); 

使用 JavaScript 控制 HTML5 视频播放器:W3schools

【讨论】:

  • 它不起作用...在我以您的方式使用后,视频停止了,并且删除了对象元素,但页面中也有黑色区域或视频区域并且“玩家” div 中没有子元素。
  • @Maxpan 我的解决方案只删除了播放器对象,而不是 div 元素。如果你想删除 div#player,那么你可以将我的代码 $(videoPlayer).remove(); 更改为 $('#player').remove()
  • 在 $(videoPlayer).remove() 之后,但是视频也在页面和播放中,有没有其他方法可以解决?都一样
  • 我想你可以在删除之前尝试通过$(videoPlayer).hide()隐藏它。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-02-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-27
  • 1970-01-01
相关资源
最近更新 更多