【发布时间】:2015-03-18 19:43:20
【问题描述】:
我正在尝试使用内容脚本或类似内容从现有网站访问 Angular 函数。我知道我需要调用的函数,但我不熟悉 Angular 函数的范围。因此,即使我可以看到该函数,并且知道要传递给它的参数,我也无法从控制台调用它。
这里是我需要的功能...
angular.module("smartwayTraffic").controller("mapController", ["$scope", "$window", "$q", "$timeout", "$modal", "_", "constant", "geolocation", "dataService", "mapService", function(n, t, i, r, u, f, e, o, s, h) {
...
n.gotoRegion = function(t) {
e.regionBounds.forEach(function(i) {
i.region === t && (y(), n.map.control.fitBounds(i.bounds), v())
})
};
....
我还需要什么才能从控制台触发此功能?
....gotoRegion("Nashville");
【问题讨论】:
-
你到底想做什么?这听起来像是the XY Problem 的情况。究竟什么是内容脚本?究竟是什么限制了您从“内容脚本”调用 gotoRegion?
-
您可能会发现这个问题很有用 (stackoverflow.com/questions/15527832/…)
-
问题是我必须对这个网站进行截图...smartway.tn.gov/traffic 为菜单中的每个位置每 5 分钟一次。我只能访问 url 和浏览器。我正在更新的以前版本的软件使用 cookie 来放大这些位置,但据我所知,新站点只需要一个地理定位点,或者它将您发送到广阔的视野。当您单击链接时,将放大这些区域的站点菜单正在调用名为“gotoRegion()”的函数,其中城市名称作为参数。我对这个问题的其他解决方案持开放态度。
-
就我所说的内容脚本而言,我希望添加某种在浏览器中执行的代码,用于处理已加载的数据。然后,我可以将它添加到现有脚本中,该脚本会截取我们已有的该站点的屏幕截图。
-
@tantangula:我不确定,但在我看来,您需要的是地图指令。使用指令,您可以以任何您喜欢的方式操作 DOM,并且可以避免编写应该尝试强制进入角度控制器范围的脚本方法。
标签: javascript angularjs angularjs-scope