我是Javascript初学者。我正在动态创建函数表达式并使用文本文件中的JSON调用参数。使用正确的参数正确创建函数,并且循环正常递增。即一切正常。我的问题是,当我用onclick事件调用动态生成的函数时,没有任何事情发生,也没有错误。这是功能:
function imgurl(arr) {
for(var i = 1; i < arr.length; i++) {
arr[i].fname = function() {
addImage(arr[i].image, 0.5, 0.75);
};
/*$scope.addImage1 = function() { //this is a sample of the function
addImage('image.png', 0.5, 0.75);
};*/
}
};
这是onclick事件
<button type="button" class="btn image1" ng-click="addImage1()">Image</button>
单击按钮时,代码会将图像导入画布。我通过使用()立即调用它们来测试动态生成的函数,并在页面加载函数循环时调用它们,并将所有图像完美地导入到画布中,即函数表达式按预期工作。但是当我尝试onclick事件时,我什么都没得到,甚至没有错误。
然后我手动写出测试函数表达式并且onclick事件有效。从上面的代码:
$scope.addImage1 = function() {
addImage('image.png', 0.5, 0.75);
};
所以当我手动写出函数表达式然后onclick事件工作但是当我尝试使用动态生成的表达式时,onclick不起作用。我只想再次提一下,当我立即调用动态生成的函数时,我无法调用onclick事件。