检测功能在点击时运行

时间:2016-07-12 13:52:56

标签: javascript jquery angularjs

我想通过创建与用户点击按钮相关联的功能的日志来跟踪我的角度应用中的用户活动。

我认为最好的方法是创建一个事件监听器,记录函数名称和与被点击元素相关的任何参数。

我已经能够检索元素,但不确定如何获取函数名称和参数。

非常感谢任何帮助。

到目前为止,这是我的代码,所以如果我点击一个包含myFunction的按钮,我想让clickListener记录'myFunction'被调用,'foo'是传入的参数。

$scope.clickListener = function () {
    document.addEventListener("click", function (event) {
        console.log(event.target);
    }, false);
};

$scope.myFunction = function (foo) {
    //do stuff
}

<button ng-click="myFunction('foo')"></button>

2 个答案:

答案 0 :(得分:1)

您可以按f.input获取该功能的名称。不用说,上面构造的arguments.callee.name给出了传递的参数列表。

arguments

答案 1 :(得分:0)

为什么你不做:

var fun = event.target.getAtttibute("ng-click").split("(");
var name = fun[0];
var params = fun[1].split(",").pop();