我的页面上有一个fancybox。在桌面上它还可以,但是当我尝试在IOS上的Safari上打开它时会失败。
iframe中的内容很长。当我开始输入时,整个页面会跳到fancybox的底部,所以我无法看到我输入的内容。如果我删除som内容以使内容适合iframe内部,则不会跳转。
javascript代码
$(".fancyBox").fancybox(
{
openEffect: 'none',
closeEffect: 'none',
prevEffect: 'fade',
nextEffect: 'fade',
tpl: {
closeBtn: '<div title="Close" class="btn doccit-button waves-effect'+closePadding+'" id="fancyClose">'+closeText+'</div>'
},
topRatio : 0,
fitToView : false,
type : 'iframe',
iframe : {
preload: false
},
padding : 12,
beforeLoad: function () {
//console.log($(this.element).data('url'));
if ($(this.element).data('url')) {
var url = $(this.element).data('url');
this.href = url
}
},
beforeShow: function () {
var fancyWidth = 1100;
var fancyHeight = 700;
var fancyMargin = [60,8,8,8];
if($(this.element).data('width')) { fancyWidth = $(this.element).data("width") };
if($(this.element).data('height')) { fancyHeight = $(this.element).data("height") };
if($(this.element).data('margin')) { fancyMargin = $(this.element).data("margin") };
if ($(window).width() <= 1154){
this.width = "100%";
this.height = "84%";
} else {
//alert("ipad");
this.width = fancyWidth;
this.height = fancyHeight;
this.margin = fancyMargin
};
},
helpers: {
overlay: {
locked: false,
closeClick: false,
css : {
'background' : 'rgba(241, 241, 241, 0.95)'
}
}
},
afterClose: function() {
if($(this.element).data("autoreload") == 'ja') {parent.location.reload(true);}
if($(this.element).data("autoredirect") == 'ja') {location.href = "index.asp";}
var redirectUrl = $(this.element).data("autourl");
if (redirectUrl != undefined) {location.href = redirectUrl;}
},
afterShow: function () {
$(".fancybox-wrap").draggable();
}
});
答案 0 :(得分:0)
这是由此WebKit错误引起的 - https://bugs.webkit.org/show_bug.cgi?id=176896 - 希望将在iOS 11.3中修复