Javascript angularjs-如何在iframe元素更改时读取其src属性

Javascript angularjs-如何在iframe元素更改时读取其src属性,javascript,jquery,html,angularjs,iframe,Javascript,Jquery,Html,Angularjs,Iframe,我试图理解当用户从包含iframe的父页面导航iframe时,如何读取iframe的src属性。这可能吗 因此,假设我将iframe src属性intitally设置为 “” 然后用户导航到 “” 我如何知道何时进行了更改以及更改了什么新的src? 感谢您的帮助 谢谢您可以使用onLoad事件,因此在您的情况下提供一个处理程序: <iframe src="http://www.example.com" onLoad="iFrameSourceChanged(this);"><

我试图理解当用户从包含iframe的父页面导航iframe时,如何读取iframe的src属性。这可能吗

因此,假设我将iframe src属性intitally设置为

“”

然后用户导航到

“”

我如何知道何时进行了更改以及更改了什么新的src?

感谢您的帮助


谢谢

您可以使用onLoad事件,因此在您的情况下提供一个处理程序:

 <iframe src="http://www.example.com" onLoad="iFrameSourceChanged(this);"></iframe>

var originalUrl = "http://www.example.com";
function iFrameSourceChanged(iframe)
{
     if(iframe.src != originalUrl)
      {
         // it changed to a different source
      }
}

变量originalUrl=”http://www.example.com";
函数iFrameSourceChanged(iframe)
{
if(iframe.src!=originalUrl)
{
//它变为另一个来源
}
}

只要iframe的源发生更改,就会调用iFrameSourceChanged函数,您可以使用自定义指令来实现

  <iframe ng-src="{{iframelink}}" iframeurlload></iframe>
app.directive('iframeurlload', function($state) {
        return {
            restrict: 'A',
            link: function(scope, element, attrs) {
                element.bind('load', function() {
                    var url =angular.element(document.querySelector('iframe')).contents()[0].URL;
                    if (url.includes("anotherpage")){
                        // Do anything what you want
                    }
                });

            }
        };