我需要访问iframe中的<head>
元素并在其中写入内容,从而将网站加载到iframe中更多功能。
这有效:
function dosomething() {
var target = $(frames["iFrame"].window.document).contents().find("head")[0];
...
target.appendChild(someChild);
}
something.onclick = dosomething();
但是我想在加载iframe中的页面后立即添加功能,每次加载新页面时都是如此。
document.getElementById('iFrame').onload = function() {
var target = $(frames["iFrame"].window.document).contents().find("head")[0];
}();
这给了我2行中的错误&#34;无法读取属性&#39;窗口&#39;未定义&#34;
var iFrame = document.getElementById('iFrame');
iFrame.addEventListener('onload', function() {
function refresh() {
var target = $(frames["iFrame"].window.document).contents().find("head")[0];
...
target.appendChild(someChild);
});
&#34;无法获得属性&#39; addEventListener&#39;未定义或空引用&#34;
$( '#iFrame' ).on( "load", function() {
var target = $(frames["iFrame"].window.document).contents().find("head")[0];
...
target.appendChild(someChild);
});
此处不会抛出任何错误,但也不会进入该功能。
这对我来说似乎都很奇怪。这样做的正确方法是什么?