我使用第三方JavaScript应用程序的一个函数,我在我的AngularJS工厂之一中包含并调用该函数。该函数的一个参数是DOM元素的id,因为该函数操纵此元素。AngularJS:通过getElementById找不到的元素
ThirdPartyApp.doSomething("#elementId").then(function (success) {
}, function (error) {
});
但我得到的错误:无法获取元素与ID ...
我假定应用程序使用document.getElementById
因为我试图手动调用它,但它甚至没有找到元素尽管它根据浏览器的DOM浏览器存在。
带id的元素位于我通过ng-include包含的HTML页面中。
我如何在我的AngularJS环境中解决这个问题,因为我无法改变第三方应用程序的工作方式?
更多信息
这里是元素的HTML页面:
<div>
<iframe id='testId' ng-src='{{test}}' style='overflow: hidden;' />
</div>
这里是我有这个HTML页面:
<ng-include src="'/views/shared/test.html'"></ng-include>
为什么在AngularJS document.getElementById("testId")
工厂没有找到iframe元素?
你有没有尝试过传入elementId而没有'#'? –
@DanielBernsons是的。相同的结果 – Palmi
在这种情况下,如果您不知道您正在使用什么第三方应用程序,或者您的HTML代码是什么样的,就不可能提供任何有用的帮助。 –