繁体   English   中英

Modal出现在Chrome / Firefox上,但没有出现在Safari中吗?

[英]Modal appears on Chrome/Firefox but not safari?

我有一个链接到URL的标记为“ shoe_tag”的“ a”标签,以及下面的以下js代码:

$(".shoe_tag").on('click', function() {

    tpos = $(window).scrollTop() + 300;
    myModal.open();
    $(".scotch-modal").css({top:tpos, position:'absolute'});


});

此代码使我可以在服务器响应时打开模式,这通常需要大约4秒钟。 在Chrome和Firefox上,将在浏览器等待服务器响应时打开模式,而在Safari上则不会打开模式。 但是,如果我将调试器语句放在最后,然后在Web控制台中调用“ myModal.open()”,则将出现模式。 除非我在控制台中调用它,否则它几乎就像Safari跳过此代码一样。 我一直在研究基于Safari的内容超过一个星期,但感到困惑,有什么想法吗?

我认为浏览器的渲染管道存在问题,请尝试在短时间后显示模式:

$(".shoe_tag").on('click', function() {

    var tpos = $(window).scrollTop() + 300;
    $(".scotch-modal").css({top:tpos, position:'absolute'});
    setTimeout(function(){myModal.open();}, 100);

});

计时器多次挽救了我的生命;-)

尝试

var tpos = $("body").scrollTop() + 300;

Webkit浏览器始终将window / html scrollTop呈现为零。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM