【发布时间】:2021-12-01 01:34:38
【问题描述】:
我想在 jQuery 移动网站上显示一个对话框,这样:
- 页面加载时显示
- 它显示了它后面的页面
- 应该可以通过在其外部单击来将其关闭
我决定使用jQuery mobile popup如下:
- 在页面内创建
<div data-role="popup"> - 以编程方式在 页面的
pageshow事件中打开弹出窗口
它做得很好。 但是,在移动设备上,当用户滚动页面时弹出窗口会四处移动。滚动时,弹出窗口会消失几分之一秒,然后重新出现在不同的位置,可能试图留在视口内。这种行为是不可取的。
我使用的代码是这样的:
https://gist.github.com/salmanarshad2000/4b84e00f061508780e82e5a7b61d617b
在移动浏览器中查看要点:
https://gitcdn.link/repo/salmanarshad2000/4b84e00f061508780e82e5a7b61d617b/raw/demo.html
预期行为:
- 弹出窗口在页面顶部打开,在顶部、左侧和右侧保持一些间隙
- 当用户滚动页面时,弹出窗口随之滚动
- 当用户停止滚动时,弹出窗口保持在原来的位置
【问题讨论】:
-
一个旧的答案可能会有所启发stackoverflow.com/questions/21732089/…将pageinit替换为pagecreate。
-
查看您的代码,页面显示应该在加载 jqm.js 之后进行。
-
@omar 在实际生产代码中它放在jqm.js之后
标签: jquery jquery-mobile jquery-mobile-popup