Javascript 如何在没有onload事件的情况下检测Iframe何时更改位置并触发函数?

Javascript 如何在没有onload事件的情况下检测Iframe何时更改位置并触发函数?,javascript,jquery,iframe,Javascript,Jquery,Iframe,我想检测IFrame何时更改位置,但不使用onload事件,实际上,我需要在IFrame位置更改后触发一个函数,以验证URL列表,如果新位置在我的列表中,则在父视图上执行一些操作。 这是我需要触发的实际函数,但就在iframe新url开始加载之前,这就是为什么事件onload与我需要的不匹配 function onLoadFrame() { var a = document.getElementById("cont").contentWindow.location.href;

我想检测IFrame何时更改位置,但不使用onload事件,实际上,我需要在IFrame位置更改后触发一个函数,以验证URL列表,如果新位置在我的列表中,则在父视图上执行一些操作。 这是我需要触发的实际函数,但就在iframe新url开始加载之前,这就是为什么事件onload与我需要的不匹配

function onLoadFrame() {
        var a = document.getElementById("cont").contentWindow.location.href;
        if ((a.indexOf("MainDashboard") > -1) || (a.indexOf("AccountManagement") > -1) || (a.indexOf("workspace_home") > -1)) {
            $('#nav-bar').fadeOut(0);
            $('#u-left-panel').fadeOut(0);
            $("#content").css({ marginLeft: "0px" });
        } else {
            $('#nav-bar').fadeIn(0);
            $('#u-left-panel').fadeIn(0);
            $("#content").css({ marginLeft: "40px" });
        }
    }
更新
实际上,我需要验证正在加载到框架中的新url或位置,以便触发一个函数,该函数显示或隐藏新url上的导航栏解除挂起,这样看起来就不会像是延迟了

我在这里找到了如何使用帮助来实现我想要的功能: 这是我的最后一段代码,类似于hi-jack的链接,以获得功能

 $('a[target="contenido"]').bind('click', function () {
        activateNavBar($(this).attr("href"));
    });
    function bindFunctionToLinks() {
        $("#cont").contents().find('a[target = "contenido"]').bind("click", function () {
            activateNavBar($(this).attr("href"));
        });
    }

在iframe调用中触发url更改的内容是否在父对象中具有函数?不是很好,但是有一个函数可以轮询iframe的位置吗?或者从这里尝试第二个答案:iframe内容是来自您自己的网站还是可以是任何网站的内容?框架上的内容将是我自己网站的url,我会用事件onload触发函数onloadframe,这是iframe代码,然后只需遵循@RobertMcKee的链接和提示。。。它为您提供了解决方案。实际上,onload事件在iframe完成后触发,以加载所有内容,因此我需要在iframe内容就绪后触发的函数对我不起作用…我需要更改iframe src,然后触发该函数,然后开始加载新url的内容