Javascript 带onload和load函数的Chrome抛出错误

Javascript 带onload和load函数的Chrome抛出错误,javascript,google-chrome,iframe,onload,google-chrome-devtools,Javascript,Google Chrome,Iframe,Onload,Google Chrome Devtools,这是工作,但我严格的质量保证说,不可能有控制台错误 我已经为DOM编写了一个iframe,并设置了一个.onload事件 var configureSDK = function () { alert('lets configure'); } var init = function (config) { // pass configurables to global var settings = config; se

这是工作,但我严格的质量保证说,不可能有控制台错误

我已经为DOM编写了一个iframe,并设置了一个.onload事件

var configureSDK = function () {
        alert('lets configure');
    }

    var init = function (config) {
        // pass configurables to global var
        settings = config;
        setupSDK(document);

        function setupSDK(d) {
            // setup iframe
            sdkportal = d.createElement('IFRAME');
            sdkportal.setAttribute('src', '//www.webtekkers.com');
            sdkportal.setAttribute('width', '100%');
            d.body.appendChild(sdkportal);
            sdkportal.onload(configureSDK());
        }
    }
就像我说的,它可以工作,但Chrome正在显示

未捕获的TypeError:对象的属性“onload”不是函数

现在我知道了,我真的应该为不同的浏览器设置单独的events AddEventListener | attachEvent('load | onload'),但这需要更多的工作

这是错的还是我错了

请不要选择jQuery


谢谢Will

错误消息虽然很难理解,但完全正确
onload
是一个属性,它的值是
未定义的
,直到您为其分配了某些内容。通常,它将被指定一个函数的引用

您可能想将
onload
属性设置为
configureSDK()
函数引用:

sdkportal.onload = configureSDK;
或者作为函数调用(如果在
onlaod
中有更多工作要做):


错误消息虽然很难理解,但完全正确
onload
是一个属性,它的值是
未定义的
,直到您为其分配了某些内容。通常,它将被指定一个函数的引用

您可能想将
onload
属性设置为
configureSDK()
函数引用:

sdkportal.onload = configureSDK;
或者作为函数调用(如果在
onlaod
中有更多工作要做):


谢谢,迈克尔,完成了。我总是忘记这是一种属性而不是一种方法…谢谢Michael,就这样。我总是忘记它是一个属性而不是一个方法。。。