jquery触发器(';click';)在带有angular js的safari中不起作用
Jquery触发器(“click”)不适用于Safari和IE,但适用于Mozilla、chrome、 我正在使用AngularJS,下面是我的代码片段jquery触发器(';click';)在带有angular js的safari中不起作用,jquery,angularjs,safari,click,jquery-trigger,Jquery,Angularjs,Safari,Click,Jquery Trigger,Jquery触发器(“click”)不适用于Safari和IE,但适用于Mozilla、chrome、 我正在使用AngularJS,下面是我的代码片段 $scope.browseFile = function () { $('.upfile').trigger('click'); console.log('click','fired browseFile'); } 下面是HTML代码 <a class="btn-attach pull
$scope.browseFile = function () {
$('.upfile').trigger('click');
console.log('click','fired browseFile');
}
下面是HTML代码
<a class="btn-attach pull-left" data-ng-click="browseFile()">Attach <i class="glyphicon glyphicon-paperclip"></i></a><input type="file" name="file" class="upfile" id="upfile" onchange="angular.element(this).scope().uploadFile(this.files)" style="display: none;"/>
附加
尝试以下代码:
$('.upfile')[0].trigger('click');
这是一个css技巧,不可能在safari上的隐藏元素上触发事件,所以我做了一些更改,主要是在style-style=“font-size:1px;不透明性:0;高度:1px;宽度:1px;可见性:hidden;”上,它适用于我的每个浏览器
<input type="file" name="file" class="upfile" id="upfile" onchange="angular.element(this).scope().uploadFile(this.files)" style="font-size:1px;opacity:0; height:1px; width:1px;visibility: hidden;">
最初来自
但至少应该适用于IE我在那里看不到upfile类。@Spokey请检查我更新了源代码
$(event.target).trigger('input').trigger('change').trigger('keydown');