如何匹配单击按钮的位置及其模态对话框

Posted

技术标签:

【中文标题】如何匹配单击按钮的位置及其模态对话框【英文标题】:How to match the position of the clicked button and its modal dialog 【发布时间】:2014-03-06 02:51:38 【问题描述】:

我对此真的很陌生,以前从未尝试过创建模式对话框。单击按钮时,我需要显示一个模式对话框。代码:

function onButtonClick(e, data) 
    switch (data.name) 
    case "tree":
        window.location.href = "familytreeprocess.php?tree=" + data.context.id;
        break;

    case "edit":
        jQuery("#divdeps").dialog(
        autoOpen: true,
        modal: true,
        closeOnEscape: true,
        draggable: false,
        resizable: false,
        width: 415,
        height: 175
        );
        break;                              
    

它工作正常。但是,我希望对话框出现在单击的按钮旁边,确切地说是在按钮的左侧。如何找到当前单击按钮的位置并使对话框适应它?

【问题讨论】:

【参考方案1】:

根据 jQuery 的documentation,您可以提供一个包含对话框位置的数组。

【讨论】:

是的,我知道,但我不确定如何首先找到点击按钮的位置。每个图表项目有多个按钮。这实际上是一个图表,每个项目都有“编辑”按钮。 这行得通,它已经足够好了,但如果对话框出现在按钮附近而不是鼠标光标所在的位置会更好。换句话说,我想找到按钮的位置、高度和宽度,然后将对话框放在它旁边。有办法吗? 当然,在你的按钮上使用jQuery的position,比如var positionX = $('#myButton').position().left等等

以上是关于如何匹配单击按钮的位置及其模态对话框的主要内容,如果未能解决你的问题,请参考以下文章

vc++6.0如何实现在模态对话框编辑框中输入数据,单击确定按钮将数据添加到组合框按钮中!

如何阻止我的模态对话框在按钮单击时关闭?

通过调用 ASP.NET 按钮单击从 jQuery 模态对话框回发

如何在 pytest-qt 中处理模态对话框而不模拟对话框

Ag-grid 中的模态

回发后未调用模态对话框的 onshow