当前位置 : 主页 > 网页制作 > Dojo >

Dojo – 如何在链接点击上以编程方式创建ToolTip对话框

来源:互联网 收集:自由互联 发布时间:2021-06-15
正如标题所说.在我单击链接并将自定义内容加载到该对话框后,我想创建TooltipDialog.工具提示正文是完整的占位符,我只是没有做任何服务器逻辑来处理这个问题. 到目前为止,我到了这一
正如标题所说.在我单击链接并将自定义内容加载到该对话框后,我想创建TooltipDialog.工具提示正文是完整的占位符,我只是没有做任何服务器逻辑来处理这个问题.
到目前为止,我到了这一步:

PreviewThread: function (ThreadID) {

            var tooltip = new dijit.TooltipDialog({
                href: "/Account/SingIn?ReturnUrl=" + Jaxi.CurrentLocation
            });
        },

<a href="javascript:Jaxi.PreviewThread(@thread.ThreadID)" class="preview-thread" id="@tp.ToString()">Preview</a>

重点不在于如何将内容加载到对话框中,而是如何在第一时间打开它?

经过更多的谷歌搜索和试用&错误我终于得到了这个:

PreviewThread: function (ThreadID) {

            var tooltip = new dijit.TooltipDialog({
                href: "/Account/SingIn?ReturnUrl=" + Jaxi.CurrentLocation,
                closable: true
            });
            dojo.query(".thread-preview").connect("onclick", function () {
                dijit.popup.open({ popup: tooltip, around: this });
            });            
        },

它以某种方式工作. ToolTipDialog打开,但是..我必须单击两次,并且在单击外部或鼠标移动后我无法关闭对话框.

好的,开始看起来像开发日志,但希望它会为其他人节省一些头条:

我终于设法弹出我想要的地方:

PreviewThread: function (ThreadID) {

            var tooltip = new dijit.TooltipDialog({
                href: "/Account/SingIn?ReturnUrl=" + Jaxi.CurrentLocation,
                closable: true
            });

            dijit.popup.open({ popup: tooltip, around: dojo.byId("thread-preview-" + ThreadID) });
        },
<a href="javascript:Jaxi.PreviewThread(@thread.ThreadID)" id="@tp.ToString()" >Click Me</a>

请注意,我使用的是Asp .NET MVC.
现在唯一剩下的就是以用户友好的方式关闭该死的东西..

有两种方法你可以做到这一点,而且没有一个是非常优雅的tbh
网友评论