在PC浏览器中,存在一个问题,弹出窗口会在调整窗口大小时更改其位置。我在Google上进行了搜索,发现JMF有一个将positionTo从origin /#codeSource更改为window的错误。
在移动浏览器中,我在页面滚动方面存在相同的问题。弹出窗口再次呈现在错误的位置。
我需要以某种方式设置正确的位置,或者避免在调整窗口大小和滚动页面时多次打开。
有人可以给我一些建议吗?
您需要收听popupbeforeposition
事件并更改ui
该事件忽略的对象。对象拥有三项属性用于定义弹出窗口的位置,ui.x
,ui.y
和ui.positionTo
。
后者的默认值属性是window
,它覆盖任何以前添加值ui.x
和ui.y
。因此,每当popupafterposition
火灾,ui.positionTo
应改为null
代替window
。
编辑:下面的代码应包装在pageinit
事件(2)中。
$(document).on("pageinit", function () {
$("#popup_ID").on("popupbeforeposition", function (e, ui) {
ui.x = value; /* (1) */
ui.y = value;
ui.positionTo = null; /* this */
});
});
(1)值=数字
(2) pageinit
是一个特殊的jQM事件,它等效于.ready()
并且应该代替它使用。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句