弹出窗口,包含鼠标悬停在超链接上的信息

时间:2013-06-19 04:41:09

标签: php jquery popup modal-dialog

我想显示联系人信息,链接联系我们页面鼠标悬停超链接就像stackoverflow(鼠标悬停在用户名上)和gmail(点击用户名)。以下是最新更新的代码。

<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>

<script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
  <link rel="stylesheet" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/themes/start/jquery-ui.css" />

<script>
$('#open').mouseenter(function() {
    $('#dialog_content').dialog('open');
});
$('#dialog_content').mouseleave(function() {
    $('#dialog_content').dialog('close');
});
var posX = $('#open').offset().left;
var posY = $('#open').offset().top;
console.log(posX,posY);
$('#dialog_content').dialog({
    autoOpen: false,
    open: function() {
        closedialog = 1;
        $(document).bind('click', overlayclickclose);
    },
    focus: function() {
        closedialog = 0;
    },
    close: function() {
        $(document).unbind('click');
    },
    buttons: {
      /*  
      Ok: function() {
            $(this).dialog('close');
        }
        */
     },
    show: {
            effect: 'fade',
            duration: 800
        },
    hide: {
            effect: 'fade',
            duration: 800
        },

    position: [posX,posY+25],
    resizable: false
});
</script>
<style>
.ui-dialog-titlebar {display:none;}
#other_content {width:200px; height:200px;background-color:grey;}
#dialog_content{display:none;}
</style>
<div id="dialog_content">bla bla bla</div>




<div id="open">CONTACT US</div>

我得到的错误

未捕获的TypeError:无法读取未定义的属性“left”

2 个答案:

答案 0 :(得分:0)

如果您正在寻找更多代码简单的弹出工具提示,我很享受这个定制版本:

http://devseo.co.uk/examples/pure-css-tooltips/#

如果这对你来说过于花哨,那么这个更基本的版本就会有一些css3过渡,在这里解释得很好:

http://sixrevisions.com/css/css-only-tooltips/

答案 1 :(得分:0)

选中此选项:

jsfiddle.net/3mxGM/4/

它创建了一个jQuery模态窗口,其中包含id为dialog_content的div内的信息。您可能希望在数据库中的div内部使用动态内容。无论如何,这应该适用于你想要的东西。

HTML:

<div id="dialog_content">
Here you can write the info to show up in the modal window.<br /><br />
If you know what AJAX is, could be a good idea to use it to query your database and get the info from there.</div>
<a href="#" id="open">Open dialog</a>

jQuery的:

$(document).ready(function(){
$('#open').mouseenter(function() {
$('#dialog_content').dialog('open');
});
$('#dialog_content').mouseleave(function() {
$('#dialog_content').dialog('close');
});
var posX = $('#open').offset().left;
var posY = $('#open').offset().top;
$('#dialog_content').dialog({
autoOpen: false,
focus: function() {
    closedialog = 0;
},
close: function() {
    $(document).unbind('click');
},
buttons: {
  /*  
  Ok: function() {
        $(this).dialog('close');
    }
    */
 },
show: {
        effect: 'fade',
        duration: 800
    },
hide: {
        effect: 'fade',
        duration: 800
    },
position: [posX,posY+25],
resizable: false
});
});

的CSS:

.ui-dialog-titlebar {display:none;}