2013-05-29 88 views
2

我对Adobe Captivate如何生成它的内容了解甚少,但是它在使用javascript时会动态生成html代码。我想的Javascript代码部分添加到不停地检查此行的主要HTML页面:使用Javascript动态替换HTML5标签

<video src="vr/Vi1.mp4" style="display: block; left: 0px; top: 0px; width: 1280px; height: 664px;"></video> 

,并与我选择的视频标签替换它。

到目前为止,我研究过的大多数“替换脚本”的问题是,它们只在页面打开时才执行,但由于代码是动态生成的,并且标记可能在任何给定时刻出现,所以我需要每次内容更改时都会检查页面的内容。

任何帮助将不胜感激! Regards

+0

问题已回答您的问题吗?如果是这样,请点击答案上的接受 – Mifeet

回答

0

你需要什么是检测何时元素被添加到一个页面,特别是<video>元素。有一个DOM事件,但它已被弃用 - 请参阅此answer。答案可能对你有所帮助,接受的答案建议为setInterval()

尝试这种情况:

function checkVideo() { 
    var videoTags = document.getElementsByTagName("video"); 
    if (videoTags.length > 0) { 
     // do something with video 
    } 
    setTimeout(checkDOMChange, 1000); // schedule the next check 

}

然后,只需运行checkVideo()当文件被加载(与jQuery例如$(document).ready(checkVideo))。

jQuery还有一个函数live()它应该可以解决您的问题,但现在已经弃用了。