jquery 触发器('click')在 Safari 中无法使用 angular js
jquery trigger('click') is not working in safari with angular js
Jquery 触发器('click')不适用于 Safari 和 IE,但适用于 Mozilla,chrome,
我正在使用 AngularJS,这是我的代码片段
$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="font-size:1px;opacity:0; height:1px; width:1px;visibility: 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;">
最初来自
$(event.target).trigger('input').trigger('change').trigger('keydown');
但至少应该适用于 IE
Jquery 触发器('click')不适用于 Safari 和 IE,但适用于 Mozilla,chrome,
我正在使用 AngularJS,这是我的代码片段
$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="font-size:1px;opacity:0; height:1px; width:1px;visibility: 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;">
最初来自
$(event.target).trigger('input').trigger('change').trigger('keydown');
但至少应该适用于 IE