我有以下代码在笔记本电脑/台式机上正常工作
<img data-bind="click: $root.previewImage, attr:{src: DocFile, data: DocFile}"
class="card-img-top" alt=""/>
self.previewImage = function (prev) {
$('#loading').show();
var width = $(window).width();
var height = $(document).width();
$("#ImgPreview").attr('height', $(window).height() * 0.7);
$('#ImgPreview').attr('src', ko.toJS(prev.DocFile));
$('.modal .modal-body').css('max-height', $(window).height() * 0.8);
$('#myModal').modal('show');
$('#loading').hide();
};
但是当我转入移动设备时,点击事件无效。
答案 0 :(得分:0)
尝试添加&#34; touchend&#34;事件。保持&#34;点击&#34;用于桌面浏览器的绑定,只需添加&#34; touchend&#34;事件绑定调用相同的函数&#34;点击&#34;调用。最终结果看起来像这样:
<img data-bind="click: $root.previewImage, event: { touchend: $root.previewImage }, attr:{src: DocFile, data: DocFile}" class="card-img-top" alt=""/>
这应该适用于大多数移动浏览器。有关&#34; touchend&#34;的更多信息可以找到事件(包括浏览器兼容性)here。