我有一个div
与id
lveventplayer。在某些时候,视频流会从我无法跟踪的另一个脚本中触发,div
元素将替换为iframe
。 id
仍然是一样的。
我的问题是:我可以在使用iframe更改div时使用其他函数吗?
答案 0 :(得分:0)
是的,有可能,您可以使用find方法找到特定的div并执行逻辑。
示例:$('#your div is not dynamic')。find('#id of the player')。
答案 1 :(得分:0)
可能是 DOMNodeInserted 事件正在寻找,因为div实际上被替换为另一个元素,并且这个新元素必须被嵌入到DOM中,所以 DOMNodeInserted 事件被调用。
// simulate video streaming event that triggers a div-element to be replaced with a different iframe-element
setTimeout(function(){
var testDiv = $('#testDiv');
var testIframe = $('<iframe id="testDiv"></iframe>');
testDiv.replaceWith(testIframe);
},3000);
// ACTUAL CODE
// check for new elements that are going to be inserted
$('body').on('DOMNodeInserted',function(){
// this anonymous function is called as soon as a new DOM-element is inserted,
// therefore you have to check whether a new inserted element is your iframe-element
var testIframe = $('#testDiv');
if(testIframe.length){
alert('iframe: '+testIframe.attr('id'));
}
});
希望这有帮助。