jQuery:工具提示可见性

时间:2010-02-19 01:24:50

标签: jquery button tooltip

我目前在我的网页上有以下Javascript:

function tooltip(top, left, speed, easing, callback) {
    $(".tooltip").css({"margin-top": top, "margin-left": left});
    var state;

    if(state!="1") {
        if($(".tooltip .anchor").css("display")=="none") {
            var state="1";
            $(".tooltip .anchor").fadeIn("250");
            $(".tooltip .bubble").fadeIn("250");
        }
        else {
            var state="0";
            $(".tooltip .anchor").fadeOut("250");
            $(".tooltip .bubble").fadeOut("250");
        }
    }
}

...以及以下HTML:

<a href="javascript:;" onclick="board();"><span class="icon index">Board Index</span></a><a href="javascript:;" onclick="tooltip('10px', '140px', 'slow');"><span class="icon info">Information</span></a><a href="javascript:;" onclick="tooltip('10px', '225px', 'slow');"><span class="icon reply">Reply</span></a><a href="javascript:;"><span class="icon report">Report</span></a>

HTML(“信息”和“回复”,到目前为止)链接到“工具提示”功能,该功能切换工具提示的显示。

我的问题是:理想情况下,我可以按一个按钮,然后点击另一个按钮而不切换工具提示的显示 - 只有位置和内容。这可能吗?

提前非常感谢!

2 个答案:

答案 0 :(得分:0)

在你的例子中有很多关于状态变量的奇怪事情 - 这里是用那些修复过的重写:

function tooltip(top, left, speed, easing, callback) {
    $(".tooltip").css({"margin-top": top, "margin-left": left});
    var state;

    if(state != 1) {
        if($(".tooltip .anchor").css("display")=="none") {
            state = 1;
            $(".tooltip .anchor").fadeIn("250");
            $(".tooltip .bubble").fadeIn("250");
        }
        else {
            state = 0;
            $(".tooltip .anchor").fadeOut("250");
            $(".tooltip .bubble").fadeOut("250");
        }
    }
}

首先不要使它成为一个字符串,然后不要在if语句中重新声明(并隐藏另一个)。

答案 1 :(得分:0)

我真的不明白你要做什么,但看看这个link,看看它是否是你想要的结果。您可以查看来源以了解我是如何做到的。此外,在我的示例中,工具提示将显示绝对定位到当前鼠标位置的x和y坐标。