要求相当简单,我需要在点击用户点击的表格中的链接时显示弹出窗口(X和Y坐标)。用户可以从网页上的列表中添加表格。
当用户第一次点击链接时,弹出窗口确实显示在正确的位置,但窗口滚动到底部(焦点移动到底部),并且在桌子下方创建了大量额外空间。这很烦人,因为现在用户必须向上滚动才能看到表格和弹出窗口。有趣的是,这只发生在IE(版本7.0)上。我用Firefox测试过,它运行得很好。
任何帮助都应该受到赞赏。
由于 KUNAL
答案 0 :(得分:1)
听起来你有一个锚链接(例如#footer)并且它跳到那个(注意我给的例子会跳转到它,因为它会使用任何ID作为锚点。)
您应该在javascript事件上调用.preventDefault()
。例如(jQuery):
$('a').click(function(e) {
e.preventDefault();
//other code...
});
有关评论的代码:
//get current position
var event = getEvent ( ffEvent );
event.preventDefault();
jQuery("#"+oMatrixModel.m_sPortletNameSpace+"popupDiv").dialog({
position: [event.clientX,event.clientY], modal: true,
resizable:false , height: 'auto', dialogClass: 'alert'
});
答案 1 :(得分:1)
球员, 我终于搞定了,它实际上是一个CSS问题。我将以下代码段添加到我的应用程序使用的CSS中,并且一切正常:
.ui-dialog { position: absolute; padding: .2em; width: 300px; overflow: hidden; }
.ui-dialog .ui-dialog-titlebar { padding: .4em 1em; position: relative; }
.ui-dialog .ui-dialog-title { float: left; margin: .1em 16px .1em 0; }
.ui-dialog .ui-dialog-titlebar-close { position: absolute; right: .3em; top: 50%; width: 19px; margin: -10px 0 0 0; padding: 1px; height: 18px; }
.ui-dialog .ui-dialog-titlebar-close span { display: block; margin: 1px; }
.ui-dialog .ui-dialog-titlebar-close:hover, .ui-dialog .ui-dialog-titlebar-close:focus { padding: 0; }
.ui-dialog .ui-dialog-content { position: relative; border: 0; padding: .5em 1em; background: none; overflow: auto; zoom: 1; }
.ui-dialog .ui-dialog-buttonpane { text-align: left; border-width: 1px 0 0 0; background-image: none; margin: .5em 0 0 0; padding: .3em 1em .5em .4em; }
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset { float: right; }
.ui-dialog .ui-dialog-buttonpane button { margin: .5em .4em .5em 0; cursor: pointer; }
.ui-dialog .ui-resizable-se { width: 14px; height: 14px; right: 3px; bottom: 3px; }
.ui-draggable .ui-dialog-titlebar { cursor: move; }